文档库 最新最全的文档下载
当前位置:文档库 › 51CTO韩顺平2011最细servlet笔记

51CTO韩顺平2011最细servlet笔记

51CTO韩顺平2011最细servlet笔记
51CTO韩顺平2011最细servlet笔记

◆背景知识介绍

J2EE的13种技术

java->servlet->jsp [技术总是有一个演变过程]

zip粘贴到word设置

◆回顾一下我们现有的技术

java 基础(面向对象,集合,界面,线程,文件,网络)

jdbc (java 的数据库编程)

oracle / mysql / sqlserver

html css javascript (web 开发) ->网页设计

xml

serlvet+jsp ->java web开发[使用java技术做web开发]

◆java ee 体系的介绍

◆servlet项目演示

◆web 开发介绍

①静态页面(html)

②动态页面

1.用户可以输入数据,和页面交互(注册,购物,发帖子,付款...)

2.不同时间打开页面,内容是变化.

3.目前比较流行的左动态页面的技术( servlet/jsp , php , https://www.wendangku.net/doc/a513187962.html, , asp, cgi )

◆动态网页技术的比较(了解)

◆bs 和cs的比较

(1)BS:browser server 浏览器服务器

(2)cs client server 客户服务

为什么需要的web服务器/web究竟是干什么的?

模拟一个web服务器MyWebServer.java

import java.io.*;

import https://www.wendangku.net/doc/a513187962.html,.*;

public class MyWebServer

{

public static void main(String []args) throws Exception{

ServerSocket ss=new ServerSocket(80);

Socket s=ss.accept();

//提示一句话

System.out.println("在9999 上等待连接...");

OutputStream os=s.getOutputStream();

BufferedReader br=new BufferedReader(new FileReader("d:\\hello.html"));

String buf="";

while((buf=br.readLine())!=null){

os.write(buf.getBytes());

}

//关闭流

br.close();

os.close();

s.close();

}

}

◆通过tomcat来讲解BS结构

◆安装tomcat服务器

(1)解压即可

(2)配置

①在环境变量中添加

JA V A_HOME= 指向你的jdk的主目录(并不是bin文件目录)

②在不配置JA V AHOME的前提下启动tomcat 在startup.bat的第25行中添加set JA V A_HOME=JKD路劲

(3)启动tomcat服务器

到tomcat 主目录下bin/startup.bat

(4)验证是否安装成功

http://localhost:8080(8080是默认端口如果该端口已经被占用需要修改端口)

◆tomcat安装后问题解决

(1)tomcat无法正常启动的原因分析

1.JA V A_HOME 配置错误,或者没有配置

2.如果你的机器已经占有了8080 端口,则无法启动,

解决方法

(1) 你可以8080 先关闭

netstat –an

netstat –anb 来查看谁占用该8080

(2) 主动改变tomcat的端口.

到conf/server.xml 文件中修改

server.xml的端口号)protocol="org.apache.coyote.http11.Http11NioProtocol" redirectPort="8443"/>

(3) 能够正常启动,但是会导航到另外一个页面.

去修改工具->管理加载项,把默认的导航给禁用即可.

(4) 在访问tomcat时候,一定保证tomcat 服务器是启动

◆tomcat的目录结构文件

bin: 启动和关闭tomcat的bat文件

conf: 配置文件

-->server.xml: 该文件用于配置和server 相关的信息, 比如tomcat启动端口后,配置Host, 配置Context 即web应用

-->web.xml : 该文件配置与web应用(web应用就相当于是一个web站点)

-->tomcat-users.xml: 该文件用户配置tomcat 的用户密码和权限

lib目录: 该目录放置运行tomcat 运行需要的jar包

logs目录:存放日志, 当我们需要去查看日志的时候,很有用!,当我们启动tomcat错误时候,可以查询信息.

webapps目录: 该目录下,放置我们的web应用(web 站点), 比如:

建立web1 目录下面放置我们的html 文件jsp 文件..图片... 则web1就被当

做一个web应用管理起来(?特别说明tomcat 6.0 以后支持tomcat 5 版本还有

别的设置)

work: 工作目录: 该目录用于存放jsp被访问后生成的对应的server文件和.class文件

如何去访问一个web 应用的某个文件

◆首页面设置及目录规范结构

现在我们要求:把hello.html文件设置成该web应用的首页,则需要把web应用的目录格式做的更加规范:

①在web文件夹下配置WEB-INF文件夹

②在web.xml 文件中添加配置的代码:

hello1.html

③通过http://localhost:8088/web1来访问hello1.html

web-inf目录下的classes目录将来是存放class文件

lib 目录将来时存放jar文件

web.xml 配置当前这个web应用的信息.

◆tomcat如何去管理虚拟目录

需求: 当我们把web 应用放到webapps目录,tomcat会自动管理,如果我们希望tomcat 可以管理其它目录下的web应用?->虚拟目录配置

我在d 盘有一个web应用.

◆虚拟目录配置步骤:

①找到server.xml文件

②编辑host节点添加Context path

在server.xml中添加:

myweb2:是访问时输入的web名,实际取出的是web2中的资源

"d:\web2":绝对路径下web2中存放资源如:hello2.html

实际访问时输入的地址:http://localhost:8088/myweb2/hello2.html

绝对路径:从根分区找某个文件

相对路径:从该文件位置去找另一个文件

③需要重启tomcat,才能生效.(因为是采用的dom技术讲信息加载到内存中)

◆context 的几个属性的说明

path:

docbase:

reloadable;如果设为ture ,表示tomcat 会自动更新web应用,这个开销大,建议在开发过程中,可以设为true, 但是一旦真的发布了,则应当设为false;

upackWAR: 如果设为ture ,则自动解压,否则不自动解压.

①:打war包cd:d/web2 然后jar –cvf web2.war *

②:

浏览打好的war包Deploy发布后会在webapps中自动生存改文件

◆配置域名

我们看和一个如何配置自己的主机名:

我们在实际访问网站的过程中,不可能使用http://localhost:8080/web应用/资源名的方式去访问网站,实际上使用类似

https://www.wendangku.net/doc/a513187962.html,或者

https://www.wendangku.net/doc/a513187962.html,的方式去访问网站,这个又是怎么实现的呢?

看看ie浏览器访问一个web站点的流程.

实现的步骤如下:

(1) 在C:\WINDOWS\system32\drivers\etc 下的host文件添加127.0.0.1 https://www.wendangku.net/doc/a513187962.html,

(2) 在tomcat 的server.xml文件添加主机名

(3) 在d:\web3 加入了一个/WEB-INF/web.xml 把hello2.html设为首页面

如果连端口都不希望带,则可以吧tomcat的启动端口设为80即可.

(4) 重启生效

◆tomcat体系的再说明

图:

如何配置默认主机:

在tomcat/conf/server.xml 文件

◆为什么需要servlet技术?

比如需求:我们希望用户可以贴,用户还可以回复 ....这样一些和用户可以交互的功能,用普通的java技术就完成不了, sun 就开发了servlet技术供程序员使用.

◆servlet的介绍

①servlet 其实就是java程序(java类)

②该java 程序(java 类)要遵循servlet开发规范

③serlvet是运行在服务端

④serlvet 功能强大,几乎可以完成网站的所有功能

⑤是学习jsp基础

◆tomcat 和servlet 在网络中的位置

servlet的生命周期是怎样的/servlet究竟是怎样工作的UML 时序图帮助大家理解

参看execel

面试题: 请简述servlet的生命周期(工作流程)

答:

标准版本:

①WEB服务器首先会检查是否已经装载并创建了该servlet实例对象。如果是直接进行第④步,否则执行第②步。

②装载并创建该Servlet的一个实例对象。

③调用Servlet实例对象的init()方法。

④创建一个用于封装HTTP请求消息的HttpServletRequest对象和一个代表HTTP响应消息的HttpServletResponse对象,然后调用service()方法并将请求和响应作为参数传递进去。

⑤WEB应用被停止或重启之前,Servlet引擎将卸载Servlet,在卸载之前调用Servlet的destroy()方法

1.当serlvet 第一次被调用的时候,会触发init函数,该函数会把servlet实例装载到内存.init

函数只会被调用一次

2.然后去调用servlet 的service 函数

3.当第二次后访问该servlet 就直接调用service 函数.

4.当web应用reload或者关闭tomcat或者关机都会去调用destroy函数,该函数就

会去销毁serlvet

5.Servlet的生命周期

当客户端第一次向web服务器发出一个servlet请求时,web服务器将会创建一个该servlet 的实例,并且调用servlet的init()方法;如果当服务器已经存在了一个servlet实例,那么,将直接使用此实例;然后再调用service()方法,service()方法将根据客户端的请求方式来决定调用对应的doXXX()方法;当web应用reload或者关闭tomcat或者关机,web服务器将调用destroy()方法,将该servlet从服务器内存中删除。

生命全过程:

1.加载

2.实例化

3.初始化

4.处理请求

5.退出服务

◆开发servlet有三种方法

(1)实现Servlet接口

(2)通过继承GenericServlet

(3)通过继承HttpServlet

◆①实现servlet接口的方式

需求如下: 请使用实现接口的方式,来开发一个Servlet ,要求该Servlet 可以显示Hello,world,同时显示当前时间.

步骤

1.在webapps下建立一个web应用hspWeb1

2.在hspWeb1下建立WEB-INF->web.xml [web.xml可以从ROOT/WEB-INF/web.xml拷

贝]

3.在WEB-INF下建立classes目录(我们的Servlet 就要在该目录开发.),建立lib文件夹

4.开发MyServlet.java

package com.hsp;

import javax.servlet.*;

import javax.servlet.http.*; 为了能将servlet-api.jar包引入,需要配置环境变量

变量值;E:\tomcat\apache-tomcat-6.0.20\lib\servlet-api.jar 记得带上文件名

import java.io.*;

class MyFirstServlet implements Servlet

{

//该函数用于初始化servlet,就是把该servlet装载到内存中

//该函数只会被调用一次

public void init(ServletConfig config)

throws ServletException{

}

//得到ServletConfig对象

public ServletConfig getServletConfig(){

return null;

}

//该函数是服务函数,我们的业务逻辑代码就是写在这里

//该函数每次都会被调用

public void service(ServletRequest req,

ServletResponse res)

throws ServletException,

java.io.IOException{

}

//该函数时得到servlet配置信息

public https://www.wendangku.net/doc/a513187962.html,ng.String getServletInfo(){

return null;

}

//销毁该servlet,从内存中清除,该函数被调用一次

public void destroy(){

}

}

5.根据Servlet规范,我们还需要部署Servlet

-->

xmlns:xsi="https://www.wendangku.net/doc/a513187962.html,/2001/XMLSchema-instance"

xsi:schemaLocation="https://www.wendangku.net/doc/a513187962.html,/xml/ns/javaee

https://www.wendangku.net/doc/a513187962.html,/xml/ns/javaee/web-app_2_5.xsd"

version="2.5">

MyFirstServlet

com.hsp.MyFirstServlet 注意:后面不要带.java④

MyFirstServlet

/ABC

服务器调用流程:http://localhost:8088/ABC--->①--->②--->③--->④

6.在浏览器中测试

在浏览器中输入

http://localhost:8088/hspweb1/ABC

7.分析一下自己写可能出现的错误

(1)MyFirstServlet 名字不一样(启动tomcat错误)

(2)com.hsp.MyFirstServlet 写成MyFirstServlet.java,会报告

500

(3)资源名自己写错

http://localhost:8088/hspweb1/错误的资源url-pattern

404错误

补充:如果使用javac 去编译一个java文件,则需要带命令参数

javac –d . java文件

补充: 如何不重启tomcat,就指定去reload 一个web应用,方法:

进入到tomcat 的manager:

点击reload即可.

课堂练习

自己使用实现Servlet接口的方法,开发一个Servlet,该servlet 可以输出自己的名字

在显示当前日期.

②使用GenericServlet开发servlet

了解即可:

案例:

package com.hsp;

import javax.servlet.*;

import javax.servlet.http.*;

import java.io.*;

public class MyGenericServlet extends GenericServlet

{

public void service(ServletRequest req,

ServletResponse res)

throws ServletException,

java.io.IOException{

res.getWriter().println("hello,world,i am geneirc servlet");

}

}

将该Servlet部署到web.xml文件中:

MyGenericServlet

com.hsp.MyGenericServlet

MyGenericServlet

/MyGenericServlet

③使用继承HttpServlet 的方法来开发Serlvet

(1)在软件公司90%都是通过该方法开发.

(2)举例说明; 还是显示hello,world 当前日期

代码:

package com.hsp;

import javax.servlet.*;

import javax.servlet.http.*;

import java.io.*;

public class MyHttpServlet extends HttpServlet

{

//在HttpServlet 中,设计者对post 提交和get提交分别处理

//回忆

,默认是get

protected void doGet(HttpServletRequest req,

HttpServletResponse resp)

throws ServletException,

java.io.IOException{

resp.getWriter().println("i am httpServet doGet()");

}

protected void doPost(HttpServletRequest req,

HttpServletResponse resp)

throws ServletException,

java.io.IOException{

resp.getWriter().println("i am httpServet doPost() post name="+req.getParameter("username"));

}

}

还有一个login.html

u:

◆小结get 提交和post的提交的区别

①从安全看get

②从提交内容看get

开发中,建议不要大于64k

③从速度看get>post

④Get可以保留uri中的参数,利于收藏

◆使用ide来开发servlet

使用ide (eclipse[java se]+myeclipse[插件可以支持jsp/servlet/struts/hibernate/spring..])开发servlet

需求:使用ide 开发一个servlet ,该servlet 显示hello,world, 和当前日期

◆开发步骤:

(1)建立web工程

(2)在Src 目录下创建了一个包com.hsp.servlet

(3)开发一个Servlet

MySerlvet 的代码:

public void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

response.setContentType("text/html");

PrintWriter out = response.getWriter();

out.println("hello "+new java.util.Date().toString() );

}

public void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

this.doGet(request, response);

}

(4)配置tomcat

点击add 选择要发布到那个服务器即可:

(5)启动tomcat

1.使用我们的老方法

2.从eclipse 启动tomcat

(6)在使用eclipse 开发servlet 可能会出现一个很麻烦事情,版本不一致错误.

https://www.wendangku.net/doc/a513187962.html,ng.UnsupportedClassVersionError: Bad version number in .class file (unable to load class com.hsp.servlet.MyServlet1)

原因是因为 tomcat 使用jdk 和 servlet 使用的 jdk不一样,

解决方法就是统一即可.

请大家使用eclipse 并配置继承 HttpServlet 开发一个servlet, 显示hello, 和当前日期.

Servlet的细节问题

①一个已经注册的Servlet可以被多次映射即:

This is the description of my J2EE

component

This is the display name of my J2EE

component

MyServlet1

com.hsp.servlet.MyServlet1

MyServlet1

/MyServlet1

MyServlet1

/hsp

②当映射一个servlet时候,可以多层比如

/servlet/index.html ok

从这里还可以看出,后缀名是html 不一定就是html,可能是假象.

③使用通配符在servlet映射到URL中

有两种格式:

第一种格式*.扩展名比如*.do *.ss

第二种格式以/ 开头同时以/* 结尾比如/* /news/*

通配符练习题:

●Servlet1 映射到/abc/*

●Servlet2 映射到/*

●Servlet3 映射到/abc

●Servlet4 映射到*.do

问题(面试题):

●当请求URL为“/abc/a.html”,“/abc/*”和“/*”都匹配,哪个servlet响应

Servlet引擎将调用Servlet1。

●当请求URL为“/abc”时,“/abc/*”和“/abc”都匹配,哪个servlet响应

Servlet引擎将调用Servlet3。

●当请求URL为“/abc/a.do”时,“/abc/*”和“*.do”都匹配,哪个servlet响应

Servlet引擎将调用Servlet1。

●当请求URL为“/a.do”时,“/*”和“*.do”都匹配,哪个servlet响应

Servlet引擎将调用Servlet2。

●当请求URL为“/xxx/yyy/a.do”时,“/*”和“*.do”都匹配,哪个servlet响应

Servlet引擎将调用Servlet2。

在匹配的时候,要参考的标准:

(1)看谁的匹配度高,谁就被选择

(2)*.do 的优先级最低

④Servlet单例问题

当Servlet被第一次访问后,就被加载到内存,以后该实例对各个请求服务.即在使用中是单例.

因为Servlet是单例,因此会出现线程安全问题: 比如:

售票系统. 如果不加同步机制,则会出现问题:

这里我给大家一个原则:

(1)如果一个变量需要多个用户共享,则应当在访问该变量的时候,加同步机制synchronized (对象){

//同步代码

}

(2)如果一个变量不需要共享,则直接在doGet() 或者doPost()定义.这样不会存在线程安全问题

韩顺平java坦克大战1.0版本_源代码

/**画坦克1.0 */ import java.awt.Color; import java.awt.Graphics; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.event.MouseMotionListener; import java.awt.event.WindowEvent; import java.awt.event.WindowListener; import javax.swing.JFrame; import javax.swing.JPanel; public class MyTankGame extends JFrame { MyPanel mp=null; public static void main(String[] args) { MyTankGame mtk=new MyTankGame(); } public MyTankGame() { mp=new MyPanel(); this.add(mp);//把面板加入窗体 //注册监听 this.addMouseListener(mp); this.addKeyListener(mp); this.addMouseMotionListener(mp); this.addWindowListener(mp); this.setTitle("坦克大战");//窗体标题 this.setSize(600,400);//大小,宽,高(像素) this.setLocation(300,300);//显示位置。左边距,上边距 //禁止用户改变窗口大小 this.setResizable(false); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true);//显示 } } //我的面板 class MyPanel extends JPanel implements

JavaEE课堂笔记f

1.Struts2在jsp页面中使用标签实现对集合的迭代,其中var属性表示要迭代的集合对象。标签实现下拉列表的功能,其中listKey属性表示其生成的HTML代码option 标签的value,listValue属性表示用作字面显示的值。标签会定义一个新的Bean,而scope属性指定将这个Bean放到相应的作用域。 2.MVC设计模式包括Model(模型)、View(视图)和Controller(控制器)三个层。Model 层一般是指Java Bean,View层一般是用jsp页面实现,Controller是控制跳转的,一般用Servlet 或相似功能的组件实现。而Struts2框架的核心控制器是StrutsPrepareAndExecuteFilter过滤器。 3.Hibernate配置文件中包括了数据库连接信息、数据库方言、其他属性等信息,不包括数据库表和实体类的ORM信息。在众多属性中,show_sql属性可以设置是否在控制台显示最终生成的SQL语句。 4.Struts2全局国际化,在创建资源文件后需要在struts.xml配置文件中添加对这些资源文件基本名的引用。 5.Spring的面向方面编程可以让我们将程序中涉及的分散的公用问题集中解决。 6.Http协议是一种无状态的协议,它不能记录用户的状态。我们可以通过get和post方法发送数据,其中get方法对请求参数有长度的限制,而post方法没有。 7.j sp中的EL可以访问JavaBean中存储的数据,EL表达式包括requestScope、sessionScope、applicationScope、param、pageContext等隐式对象。在Struts2中,EL表达式可以直接访问Action Bean中属性的值。 8.HQL和SQL语法相似,但HQL是面向对象的,而SQL是面向关系型数据库的。HQL的关键字不区别大小写,而语句中的实体类名、对象名、属性名等都是区别大小写的,这一点和Java语言类似。 9.Servlet在加载后的生命周期分为实例化、初始化、服务和销毁四个过程。 10.JSP的标准动作能实现页面转发的功能。 11.Servlet中的PrintWriter对象可以输出信息,该类型的对象可以通过response.getWriter()方法取得。 12.DWR一个能帮助我们简化Ajax开发的开源框架,在使用时,需要在dwr.xml配置文件中为JavaScript脚本暴露相应的Java类。 13.在struts.xml配置文件中标签用于配置要转向的下一个目标页面。 14.Hibernate将JDBC作了轻量级封装,使得Java程序员可以随心所欲的使用面向对象的编程思想来操纵数据库,但其本质上还是使用JDBC去和数据库进行交互。 15.SSH是JavaEE开发的经典搭配,Spring框架可以对其他框架进行整合,持久化层更可以有多种选择,除了Hibernate外,像MyBatis这样的开源框架也很受欢迎。 16在软件设计上Struts2没有跟Servlet API或struts有着紧密的耦合,因此在Struts2中可以不必使用Servlet API所提供的类和接口,但如果要使用,也可以通过多种方式实现(ServletActionContext类或实现相应接口)。同时Struts2的Action类也不用必须继承或实现struts框架提供的任何类或接口。 17Servlet API中,HttpServletResponse接口的sendRedirect()方法可以将浏览器重定向到另一个URL。而HttpServletRequest接口的getSession()方法可以取得本次会话的HttpSession类型的对象,HttpServletRequest接口的getParameter()方法可以获取客户端请求参数的数据。18依赖注入(DI)是一种开发模式,可以解除或减轻各组件之间相互依赖,相互制约的关系。

韩顺平java作业

1、做一个加法器,计算他们的和; 2、做一个减法器,计算他们的差; 3、做一个乘法器,计算他们的积; 4、做一个除法器,计算他们的商(和余数) 目的:变量定义、初始化、赋值;运算符和表达式;输出语句。 5、打印5行8列星号 6、打印半金字塔(先打印空格,在打印星号) 7、打印金字塔 8、已知掌上游戏机一台320元,mp3一台260元,公司举行抽奖,公司有18人,一等奖 游戏机,二等奖mp3,购入5台游戏机,13台mp3。问总价是多少,公司实际平均给每人花费了多少钱(4980 276.6666) 9、掌上游戏机一台X元,mp3一台Y元(X,Y由用户输入),公司举行抽奖,公司有30人, 一等奖游戏机5台,二等奖mp313台。问总价是多少,公司实际平均给每人花费了多少钱。 10、10、已知掌上游戏机一台320元,mp3一台260元,公司举行抽奖,公司有30人, 一等奖游戏机X台,二等奖mp3Y台(X,Y由用户输入)。问总价是多少,公司实际平均给每人花费了多少钱。 11、输出九九乘法表,要求行列对齐 12、请使用三个整形变量完成如下功能: 用户输入两个整数值; 计算两数的和,输出此和; 求出两数的平均值,输出平均值(整数即可); 求出平均数>第二个数的关系表达式的值,输出此值; 用第一个数减去上边关系表达式的值,得到他们的差,输出差; 存储第二个数的变量累乘上式的结果,输出次变量的当期值; 存储第一个数的变量累加第二个变量,输出第一个变量的当前值。 测试:输入3 5 得到的分别是:8 4 0 3 15 18 13、渔夫出海打渔,收货若干(36): 渔夫卖掉一半的鱼,然后送给隔壁的海伦3条; 渔夫又卖掉了剩下的鱼的三分之二,自己又吃了一条; 海伦来看渔夫,渔夫家里还剩四条。问他那天打了多少鱼? 14、有一个猴子摘了一堆桃子,当即吃了一半,可是桃子太好吃了,她又多吃了一个, 第二天他把第一天剩下的桃子吃了一半加一个,就这样到第十天早上她只剩下一个桃子,问他一共摘了多少个桃子(1534) 15、计算1+2+3+。。。。+20=?思考如果让用户输入一个整数N,计算累加和: 1+2+3+```+n=? 16、丢手帕问题 17、一元多项式的求和 (1)一元多项式的表示问题,对于任意一个一元多项式: F(x)=a0+a1*X+…+an*xn 可以抽象为一个由系数,指数对构成的线性表,且线性表中各元素的指数项是递 增的:A={ (a0,0),(a1,1),(a2,2),….(an,n)} (2)用一个单链表表示上述线性表,节点结构为:

韩顺平servlet笔记(个人总结版)

第一课 第二课tomcat 简单模拟

package com.my.first; import java.io.*; import https://www.wendangku.net/doc/a513187962.html,.*; publicclass Mytomcat { /** * @param args */ publicstaticvoid main(String[] args) throws Exception { ServerSocketss = new ServerSocket(9999); Socket s = ss.accept(); System.out.println("在9999上等待。。。"); OutputStreamos =s.getOutputStream(); BufferedReaderbr = new BufferedReader(new FileReader("f:\\hello.html")); String str=""; while((str = br.readLine())!=null){ os.write(str.getBytes()); } br.close(); os.close(); s.close(); // ss.close(); } } 在浏览器中输入 http://localhost:9999 就会出现“hello world” 第三课 启动tomcat 各种问题总结

第四课

第五课 虚拟目录 如在f盘存放着各种web应用,但是空间不够了,这是我在d盘弄个文件当做该web应用的文件。但是要在server.xml中指定一下。 步骤:1、在那个磁盘下建立“f:\web2”,并建立相关的资源文件 2、在server.xml中配置 ps: path中的“/web2”是什么,在地址中就输入什么。 http://localhost:8080/web2/hello2.html context 能配置的属性 path、docBase、reloadable(有改变就重启tomcat)、unpackWAR

韩顺平Spring笔记

①spring是什么? struts 是 web 框架 (jsp/action/actionfrom) hibernate 是 orm框架,处于持久层. spring 是容器框架,用于配置bean,并维护bean之间关系的框架 ?spring中有一个非常概念: bean (是java中的任何一种对象javabean/service/action/数据源./dao, ioc(控制反转inverse of control) di( dependency injection 依赖注入) ?画一个框架图 快速入门 开发一个spring项目. 1.引入spring的开发包(最小配置该包把常用的jar都包括, 还要写日志包 2.创建spring的一个核心文件 , [hibernate有核心 struts核心文件 ], 该文件一般 放在src目录下,该文件中引入 xsd文件: 可以从给出的案例中拷贝一份. 3.配置bean

韩顺平 4.在中,我们怎么使用 到spring 的applicationContext对象(容器对象) ApplicationContext ac=new ClassPathXmlApplicationContext(""); UserService us=(UserService) ("userService"); (); 5.细节讨论? 传统的方法和使用spring的方法 5.1使用spring ,没有new 对象,我们把创建对象的任务交给spring框架 5.2spring的运行原理图: 我们再看spring 对上面案例总结: spring实际上是一个容器框架,可以配置各种bean(action/service/domain/dao),并且可以维护bean与bean的关系,当我们需要使用某个bean的时候,我们可以getBean(id),使用即可. ioc是什么? 答:ioc(inverse of controll ) 控制反转: 所谓控制反转就是把创建对象(bean),和维护对象(bean)的关系的权利从程序中转移到spring的容器,而程序本身不再维护. DI是什么? 答: di(dependency injection) 依赖注入: 实际上di和ioc是同一个概念,spring设计者认为di更准确表示spring核心技术

韩顺平java从入门到精通视频教程(全94讲)学习笔记整理(齐全)

java平台 1、J2SE java开发平台标准版 2、J2EE java开发平台企业版 java程序需要在虚拟机上才可以运行,换言之只要有虚拟机的系统都可以运行java程序。不同系统上要安装对应的虚拟机才可以运行java程序 开发步骤 1、编写源文件 (.java) 2、编译源文件为类文件(.class)可用J2SE或J2EE编译 3、在虚拟机上运行 注释 //单行注释 /* */多行注释 java内容介绍 java编程可以分成三个方向: 1、java se (j2se)桌面开发 java中的基础中的基础 2、java ee (j2ee)web开发 3、java me (j2me)手机开发 java se课程介绍 java面向对象编程(基础) java图开界面开发 java数据库编程 java文件io流编程 java网络编程 java多线程编程 java ee基础1 java面向对象编程--数据库编程-->java se java 基础2 html--css--javascript-->div+css java ee中级部分 Servlet--Jsp-->mvc模式 java ee高级部分 Struts--Ejb--Hibernate--Spring--Ajax(ext,dw2)-->ssh框架 java之父gosling 1990 sun启动绿色计划 1 | 445

1992 创建oak语言-->java 1994 gosling参加硅谷大会演示java功能,震惊世界 1995 sun正式发布java第一个版本,目前最新是jdk7.0 java开发工具 记事本、(jcreator、jbuilder退出舞台了)、netbean、eclipse 如何选择开发工具 先选择记事本,对java有一定了解后再使用eclipse高级开发工具 为什么呢? 1、更深刻的理解java技术,培养代码感 2、有利于公司面试 java语言的特点 1、java语言是简单的 2、java语言是面向对象的 3、java语言是跨平台(操作系统)的[即一次编译,到处运行] 4、java是高性能的 java第一个程序hello.java 运行java程序要安装和配置jdk jdk是什么? 1、jdk全称java dvevlopment kit中文java开发工具包 2、jdk是sun公司开发的 3、jdk包括jre(java runtime envirnment)java运行环境、一堆java工具和java基础的类库(类共3600左右,常用类在150个左右) 4、可以在https://www.wendangku.net/doc/a513187962.html,下载 **开发安装jdk,用户执行需要安装jre 配置JDK 添加环境变量即可 windows下配置jdk 在计算机属性--高级设置--环境变量--添加PATH将JDK所在路径指定即可。多个环境变量设置时需要用;号进行隔开 1、编写第一个hello.java //注释 (解释) 作者: //功能:在控制台显示"hello" //日期:2013.11.28 //public:表示这个类是公共的,一个java文件中只能有一个public类 //class:表示这是一个类 //hello:类名(公共类的类名必须和文件名一致) public class hello{ 2 | 445

韩顺平jsp学习笔记

韩顺平jsp学习笔记 jsp u j2ee核心13种技术: 程序员必须掌握的技术:java,servlet,jsp。 13种技术规范. u j2ee程序员修炼成精法门 u jsp 版本的用户管理系统:将servlet版本改为jsp版本,只使用jsp技术完成(modle1模式开发) 并且在后面可通过jsp版的用户管理系统的改写,非常自然过渡到mv设计模式,更进一步到mvc设计模式 开发工具:myeclipse u jsp概述: jsp是servlet技术的补充,访问jsp的过程:如果是第一次访问,jsp文件被服务器翻译成一个对应的java文件(servlet),然后,再被编译成.class文件并加载到内存中。如果是以后访问jsp,那就直接调用内存中的jsp实例,所以,第一次访问jsp慢,后面访问jsp的速度就会变快了。(hello.jsp来说明运行原理:tomcat下的work下有将jsp转换为servlet的代码) 1. 为什么出现:程序员在开发过程中,发现servlet做

界面非常不好,jsp对servlet的补充(对界面的补充,jsp界面好做) 2. jsp=html+java片段+jsp标签(语法)+javascript(css):综合 3. jsp功能的强大是因为可以与javabean结合使用(即:jsp作前台(界面),javabean作后台(逻辑层))。 4. Jsp是什么:1.jsp运行在服务器,2.jsp(java server page)3。Jsp基础是servlet(相当于对servlet的包装)4.jsp 是综合技术:一个公式:jsp=html+java代码+jsp标签 +javascript(css) 比较综合5.jsp无需配置,直接使用,如果你修改了jsp文件,不需要重新reload web应用6.jsp如何访问:http://ip:8088/web应用名.jsp路径u jsp的概述:元素 1. 指令元素 2. 脚本元素 3. 动作元素 u jsp与servlet的关系: 1. jsp与servlet是对应关系 2. jsp是以servlet为基础的 u 编写一个计算器的实例: 1. 表单提交处理的jsp页面为:<form action=”chuli.jsp”>

完整图解 Tomcat 5.0.28 安装笔记

一、准备工作 在开始安装之前,先准备J2SDK和TOMCAT两个软件,如果已经安装了J2SDK,就只需TOMCAT即可。 笔者使用的软件如下: Windows 2000 Advance Server + SP4 J2SDK v1.4.2_04 - https://www.wendangku.net/doc/a513187962.html,/j2se/1.4.2/download.html TOMCAT v5.0.28 - https://www.wendangku.net/doc/a513187962.html,/dist/jakarta/tomcat-5/v5.0.28/bin/jakarta-tomcat-5.0.28.exe 二、安装J2SDK 安装很简单,只需双击下载的文件,笔者选择安装在d:\j2sdk1.4.2_04目录下。 设置环境变量,方法如下: 右击“我的电脑”==》属性==》高级==》环境变量==》新建... 变量名:JAVA_HOME 变量值:d:\j2sdk1.4.2_04 三、安装TOMCAT 运行jakarta-tomcat-5.0.28.exe 按照提示安装,偶这里选择了Service,就是作为Windows 服务来运行。

如果要改变安装路径,可以在这个步骤操作,偶这里选择安装在D:\Tomcat 5.0 在这里设置TOMCAT使用的端口以及WEB管理界面用户名和密码,请确保该端口未被其他程序占用

选择J2SDK的安装路径,安装程序会自动搜索,如果没有正确显示,则可以手工修改,偶这里改为d:\j2sdk1.4.2_04 接下来就开始拷贝文件了,成功安装后,程序会提示启动tomcat并查看readme文档。

韩顺平老师java视频课程笔记1-13课

JA V A学习记录 第一讲 //pulic:表示这个类是公共的,一个java文件中只能有一个public类//class :表示这是一个类 //Hello:类名(公共类的类名必须和文件名一致) public class Hello { //一个主函数,相当于是程序的入口 public static void main (String args[]) { /* 多行注释*/ //System.out.println("hello"); int a=10;// 定义一个变量,变量名位a,它的值为10 // int为4个字节,long为8个字节int b=20; int result=a+b //输出结果 system.out.println("结果是"+result) } } 第二讲JA V A基本数据类型 四大类型 整数类型 小数(浮点)类型 基本数据类型 布尔类型 字符类型 1.整数类型 整数类型表示一个整数,常用的整数类型有: byte, short, int, long 范围: byte 一个字节-128 – 127 short 两个字节-32768 - 32767 int 四个字节-2147483648 – 2147483647 long 八个字节 一个字节= 八个byte

例:一个byte 0 0 0 0 0 0 0 1 最高位为符号位0表示正数,1表示负数 1 1 1 1 1 1 1 1 – 0 1 1 1 1 1 1 1 2.小数(浮点)类型 常用类型有float, double 3.布尔类型 可以表示:真或者假,类型是boolean 4.字符类型 表示单个字符,字符类型是char,chai是两个字节,可以存放汉字。 多个字符称为字符串,在java中用String表示,String属于类。 . 在java中,对char进行运算的时候,直接当做ascii码对应的整数对待。(汉字则是unic码) 定义变量int a 初始化变量int a = 45 给变量赋值int a ; a =45 基本数据类型转换 int a = 1.2 错误会损失精度 double a = 4 正确数据类型可以自动从低精度向高精度转换。 byte

1.php学习笔记

◆Web开放介绍: 1.在英语中web即表示网页的意思,它用于表示Internet主机 上供外界访问的资源,即提供浏览器访问的资源。 2.Internet上供外界访问的web资源分为: ①.静态web资源(如html页面):指web页面中供人们浏览 的数据始终是不变。 ②.动态web资源:指web页面中供人们浏览的数据是由程序 产生的,不同时间点访问web页面看到的内容各不相同。 静态web资源开发技术 ★html 3.常用动态web资源开发技术: PHP、JSP/Servlet、ASP、https://www.wendangku.net/doc/a513187962.html,等 ◆php的基本概念: 1.php(php hypertext preprocessor) 超文本预处理语言 2.php由zend公司进行维护 3.php最先前用于做个人主页,现在发展到用于做网站开发 ◆php的优势: 1.跨平台性良好,多种数据库支持 2.效率比较高,具有良好的安全性 3.免费使用(成本低) 4.开放的源代码,所有的php源代码都可以得到 5.面向对象 不足: 1.安装比较复杂 2.灵活;php是解释运行机制的语言,所有很多问题在运行的阶 段才会发现

php的基本概念 快速入门案例: test.php ①.php是personla homepage的缩写 ②.目前是有zend公司负责维护和商业化 ③.php是嵌入到html中的代码 ④.php脚本是运行在服务器端的

B/S和C/S的区别 b/s的优势: ①.开发成本低 ②.管理维护简单 ③.产品升级便利 ④.对用户的培训费用低 ⑤.用户使用方便,出现故障的概率小 b/s的不足: ①.安全性不足 ②.客户端不能随心变化,受浏览器的限制 WEB服务器: 1. IIS 2. Lighttpd 3. apache

java项目实战视频教程

java项目实战视频教程 java项目实战教程视频这篇文档收集了我平时百度网盘共享的一些java视频教程;这里免费分享给大家,希望能帮助到大家,希望大家希望!!谢谢!!! 名称:动力节点_王勇DRP_中国电信客户分析系统视频教程 地址:https://www.wendangku.net/doc/a513187962.html,/s/1Gc58I 名称:OA项目 地址:https://www.wendangku.net/doc/a513187962.html,/s/1EGAve 名称:java基础教程|博客项目 地址:https://www.wendangku.net/doc/a513187962.html,/s/1xfD3b 名称:2009年博客系统项目(共37集,更新完)[37个视频文件+2个rar文件-2.13G+资源大小地址:https://www.wendangku.net/doc/a513187962.html,/s/1racuO 名称:[尚学堂][王建平]【CMS文章内容管理系统(10天)清晰版本配代码】 地址:https://www.wendangku.net/doc/a513187962.html,/s/19qVba 名称:java教学视频|北风网extjs+2项目视频教程 地址:https://www.wendangku.net/doc/a513187962.html,/s/1racsc 名称:传智播客2011年3月9日-2011年7月4日JavaEE+Andriod就业班 地址:https://www.wendangku.net/doc/a513187962.html,/s/169cmt 名称:2012年-2013年传智播客java JavaEE+物联云计算就业班视频教程[完整版]【IT教程网独家共享,互联网上绝无仅有】 地址:https://www.wendangku.net/doc/a513187962.html,/s/1b0XlN 名称:2013传智播客java全套系列视频教程 地址:https://www.wendangku.net/doc/a513187962.html,/s/13Rr5P 名称:张孝祥java视频教程|银行业务调度系统视频教程 地址:https://www.wendangku.net/doc/a513187962.html,/s/147mQB 名称:黑马程序员2012JAVA全套系列视频教程 地址:https://www.wendangku.net/doc/a513187962.html,/s/1EaDH3 名称:北风网--Flex系列从入门到精通配项目案例(S2SH+Mysql实现在线通讯录) 地址:https://www.wendangku.net/doc/a513187962.html,/s/1EGAll

韩顺平struts笔记

! Struts视频笔记: Struts是一个开源的web框架,框架提高了程序的规范的同时也约束了程序员的自由 为什么会有struts: 因为我们队mvc理解的不同,可能造成不同公司写程序的时候,规范不统一,这样不利于程序的维护和扩展,所以我们有必要用一个统一的规范来开发项目(struts) Struts 的好处: 程序更加规范化,开发效率提高了,可读性增加了,程序的可维护性增加了 ^ 运行原理: 一个请求从浏览器发送给web服务器,,web服务器首先解析主机然后解析web应用的名称 在解析出资源名转发给总司令ActionServlet(该类由struts框架提供给我们的无需编写,只需配置)ActionServlet有一个文件,该文件配置了表单actionForm(军火库),还配置了action,以及他们之间的对应关系,当ActionServlet拿到命令后它会查询文件去填充数据,把用户的数据填充到表单里边,下个动作就是去调用指定的action(小队长),action去从表单中读取数据,调用某个model(士兵,如service)完成任务,完成任务把结果返回给ActionServlet总司令(返回一个执行的结果),-->总司令又去查询文件,决定跳转到哪个jsp页面,返回一个执行结果(形成静态html文件)直接返回给web服务器服务器再把静态页面以h ttp响应给浏览器 ,登录小项目过程步骤: 新建web工程导入struts包编写编写actionForm和action 配置编写和配置测试 中的中的scope指的是actionform的生命周期范围 struts中的scope默认是session @ 配置过滤器 public class MyFilter extends HttpServlet implements Filter { @Override public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2) throws IOException, ServletException { ("gb2312"); ("gb2312"); ~ (arg0, arg1); } 配置 MyFilter MyFilter/* 上面这次比较浪费资源每次都要去实例化但是下面这种过滤器不太彻底,往数据库里插入数据时还是会经常出现乱码

韩顺平Spring笔记说课材料

◆spring的快速入门案例 ①spring是什么? struts 是web 框架(jsp/action/actionfrom) hibernate 是orm框架,处于持久层. spring 是容器框架,用于配置bean,并维护bean之间关系的框架 ?spring中有一个非常概念: bean (是java中的任何一种对象javabean/service/action/数据源./dao, ioc(控制反转inverse of control) di( dependency injection 依赖注入) ?画一个框架图 ◆快速入门 开发一个spring项目. 1.引入spring的开发包(最小配置spring.jar 该包把常用的jar都包括, 还要写日志包 common-logging.jar 2.创建spring的一个核心文件applicationContext.xml, [hibernate有核心hibernate.cfg.xml struts核心文件struts-config.xml], 该文件一般放在src目录下,该文件中引入xsd文件:可以从给出的案例中拷贝一份. 3.配置bean

韩顺平 4.在Test.java中,我们怎么使用 //我们现在使用spring来完成上面的任务 //1.得到spring 的applicationContext对象(容器对象) ApplicationContext ac=new ClassPathXmlApplicationContext("applicationContext.xml"); UserService us=(UserService) ac.getBean("userService"); us.sayHello(); 5.细节讨论? 传统的方法和使用spring的方法 5.1使用spring ,没有new 对象,我们把创建对象的任务交给spring框架 5.2spring的运行原理图: 5.3我们再看spring

韩顺平servlet与jsp 笔记与心得

?韩顺平 servlet与jsp 笔记与心得 ? ? ? ?Java EE概述: Java EE是一个开放的平台,它包括的技术很多,主要包括十三种核心技术(java EE就是十三种技术的总称)。建立一个整全的概念。 J2ee的十三种技术(规范) 1.java数据库连接(JDBC)。——JDBC定义了4种不同的驱动: 1.JDBC-ODBC桥, 2.JDBC-native驱动桥3,JDBC-network桥4.纯java驱 动。 2.Java命名和目录接口(JNDI)(它是为了对高级网络应用开发中的使用 的目录基础结构的访问。)。 3.企业Java Beans(Enterprise Java Beans,EJB)(它提供了一个架构来 开发和配置到客户端的分布式商业逻辑,因此可以明显减少开发扩展 性、高度复杂企业应用的难度。)。 4.JavaServer Pages(JSPs)。 5.Java servlets(servlets提供的功能大部分与JSP相同,JSP中大部 分是HTML代码,其中只有少量的Java代码,而servlets则相反,它 完全使用Java编写,并且产生HTML代码。)。 6.Java IDL/CORBA(用得不多)。 7.Java 事务体系(JTA)/Java事务服务(JTS)(用得不多)。 8.JavaMail和JavaBenas激活架构(JavaBeans Activation Framework,JAF)。(JavaMail是一个用来访问邮件服务的API)。 9.Java信使服务(Java Messaging Service,JMS)(JMS是一个用来和面 向信息的中层通信的API)。 10.扩展标记语言(Extensible Markup Language,XML)。 11.12. 13当前流行的及格框架struts+hibernate+spring(ssh). Java ee的开发环境(eclipse) Eclipse是一个开源的、可扩展的集成开发环境,已经成为目前最流行的j2ee 开发工具。 Eclipse安装后就可以开发java se的项目了,但不能开发java ee项目, 需要安装web开发插件(lomboz或是myeclipe) Eclipse的官网:https://www.wendangku.net/doc/a513187962.html, myeclipse的官网:https://www.wendangku.net/doc/a513187962.html,/ 在java ee的开发中有几个重要的开发模式: 1.Model1模式 2.model2模式(model2x模式(用得少)) 3.mvc模式 一、Model1模式 Model1的基础是jsp文件,它由一些相互独立的jsp文件,和其它一些java class组成(不是必须的)。这些jsp从HTTPRequest中获得所需要的数据, 处理业务逻辑,然后将结果通过Response返回前端浏览器。

韩顺平servlet笔记(完整代码)

目录 一、前序工作 (2) 二、Classes文件写一个Hello.java (2) 写java文件 (2) 配置web.xml文件 (3) 上网验证 (4) 三、写登陆界面 (4) 写java文件 (5) 配置web.xml文件 (7) 上网验证 (7) 四、同一用户的不同页面共享数据 (8) 用sendRedirct()方法实现 (8) 用隐藏表单实现 (11) Session (11) 五、Servlet链接数据库 (13) 建数据库的表 (13) 写java文件 (13) 放jar包 (16) Sql注入漏洞 (16) 六、Servlet中显示图片 (18) 七、分页技术 (19) 八、cookie (24) 使用cookie保存用户名,密码,在一定时间不用重复登陆 (24) 删除cookie (29) 九、网站框架 (30) 十、ServletContext (38) 网站计数器 (39) 优化 (40) 用户ip地址 (42) 十一、界面美化 (42) 十二、tomcat配置 (59) 如何修改tomcat端口 (59) 如何设置虚拟目录 (60) 如何给tomcat的管理员设置密码 (61) 如何设置数据源和连接池 (62) 附录 (63) Jcreator不能导入javax.servlet包问题 (63) 本文数据库数据库 (64) 本文Web.xml文件配置 (64)

一、前序工作 Tomcat安装好后 再webapps文件夹下新建mywebsite,里面包括WEB-INF,在里面是classes,lib和web.xml 文件。 Jcreator配置好jdk路径后servlet也需要导入,configure—>options—>jdkprofile,选中jdk vension,点edit—>add add achieve,选择tomcat里lib下的servlet-api,就ok了。详细看附录。 二、Classes文件写一个Hello.java 写java文件 有三种方法: /*使用实现servlet接口的方式开发(不全) package com.tsinghua; //一个自定义的包 import javax.servlet.*; import java.io.*; import java.io.IoException; public class Hello implements Servlet{ //该函数用于初始化servlet(类似与构造函数) //该函数只会被调用一次 public void init(ServletConfig parml) throws ServletException { System.out.println("init it"); } public ServletConfig getServletConfig(){ return null; } //这个函数用于处理业务逻辑 //程序员应该把业务逻辑代码写这里 //这个函数当用户每访问servlet时,都会被调用

Servlet学习笔记(六)-----Servlet之间的通信

Servlet学习笔记(六)-----Servlet之间的通信 Servlet学习笔记(六)-----Servlet之间的通信 这是4个Servlet之间的通信 2. 代码如下: 1)首先是test.htm文件,它作为客户端访问的页面 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML><HEAD> <META http-equiv=Content-Type content="text/html; charset=gb2312"> <META content="Microsoft FrontPage 4.0" name=GENERATOR></HEAD> <BODY> <CENTER> <H1>Earnest Bank </H1></CENTER> <FORM action="http://127.0.0.1:8000/servlet/firstservlet" method=post>enter your account Number here <INPUT name=accnum size="21"> <BR><BR><BR>enter your pin Number here&nbsp;&nbsp;&nbsp;&nbsp; <INPUT name=pinnum size="21"> <BR>

springBoot笔记

1.Spring Boot 入门 Spring Boot是Spring社区较新的一个项目。该项目的目的是帮助开发者更容易的创建基于Spring的应用程序和服务,让更多人的人更快的对Spring进行入门体验,让Java开发也能够实现Ruby on Rails那样的生产效率。为Spring生态系统提供了一种固定的、约定优于配置风格的框架。 Spring Boot具有如下特性: ●为基于Spring的开发提供更快的入门体验 ●开箱即用,没有代码生成,也无需XML配置。同时也可以修改默认值来满足特定的需 求。 ●提供了一些大型项目中常见的非功能性特性,如嵌入式服务器、安全、指标,健康检测、 外部配置等。 ●Spring Boot并不是对Spring功能上的增强,而是提供了一种快速使用Spring的方式。 1.1 简单例子 首先创建一个一般的Maven项目,有一个pom.xml和基本的src/main/java结构。 1.1.1 pom.xml 文件

1.1.2 对pom的说明 首先是增加了,增加父pom比较简单,而且spring-boot-starter-parent包含了大量配置好的依赖管理,在自己项目添加这些依赖的时候不需要写版本号。 使用父pom虽然简单,但是有些情况我们已经有父pom,不能直接增加时,

1.1.3关于java.version属性 上面pom.xml虽然没有出现这个属性,这里要特别提醒。 Spring默认使用jdk1.6,如果你想使用jdk1.8,你需要在pom.xml的属性里面添加java.version,如下: 1.8 1.1.4 添加spring-boot-starter-web依赖 Spring通过添加spring-boot-starter-*这样的依赖就能支持具体的某个功能。 我们这个示例最终是要实现web功能,所以添加的是这个依赖。 更完整的功能列表可以查看:Using-boot-starter-poms 1.1.4添加spring-boot-maven-plugin插件 该插件支持多种功能,常用的有两种,第一种是打包项目为可执行的jar包。 在项目根目录下执行mvn package将会生成一个可执行的jar包,jar包中包含了所有依赖的jar包,只需要这一个jar包就可以运行程序,使用起来很方便。该命令执行后还会保留一个XXX.jar.original的jar包,包含了项目中单独的部分。 生成这个可执行的jar包后,在命令行执行java -jar xxxx.jar即可启动项目。 另外一个命令就是mvnspring-boot:run,可以直接使用tomcat(默认)启动项目。 在我们开发过程中,我们需要经常修改,为了避免重复启动项目,我们可以启用热部署。1.1.6 spring-loaded热部署 Spring-Loaded项目提供了强大的热部署功能,添加/删除/修改方法/字段/接口/枚举等代码的时候都可以热部署,速度很快,很方便。 想在Spring Boot中使用该功能非常简单,就是在spring-boot-maven-plugin插件下面添 添加以后,通过mvnspring-boot:run启动就支持热部署了。 注意:使用热部署的时候,需要IDE编译类后才能生效,你可以打开自动编译功能,这样在你保存修改的时候,类就自动重新加载了。

相关文档