【JAVA】java web详解
Java Web,是用Java技术来解决相关web互联网领域的技术栈。web包括:web服务端和webkehudua两部分。Java在客户端的应用有Java Applet,不过使用得很少,Java在服务器端的应用非常的丰富,比如Servlet,JSP、第三方框架等等。Java技术对Web领域的发展注入了强大的动力。
什么是java Web?
Java Web,是用Java技术来解决相关web互联网领域的技术栈。web包括:web服务端和webkehudua两部分。Java在客户端的应用有Java Applet,不过使用得很少,Java在服务器端的应用非常的丰富,比如Servlet,JSP、第三方框架等等。Java技术对Web领域的发展注入了强大的动力。
maven
概念: 项目构建工具
核心配置文件:prom.xml
项目坐标:groupId、artifactid
打包方式(packaging) :war \jar
配置(properties) :配置字符集,jdk版本
依赖(dependency) :项目中需要的其他公司编写好的java代码,可以通过坐标定位仓库所在位置
构建(build):定义构建maven项目需要的插件
maven命令
clean: 清空仓库中已打包的项目
install:对项目进行打包
三个主要目录main
java:主要存放java文件
resources:主要存放项目配置文件
webapp:页面(HTML)
WEB-INF(该目录下的页面无法被浏览器直接访问)
Tomcat
定义:web服务器,用于运行war包程序
目录结构
bin目录:存放系统可执行程序
startup启动
shutdown关闭
conf目录:config缩写配置文件(server.xml)
lib目录:library,存放tomcat所需要的jar包
logs目录:存放日志文件
webapps目录:存放war包目录
web项目依赖包
maven仓库jar地址:
mysql驱动包:用于java链接数据库
lombok包:自动生成实体类包
@Data自动生成get、set、toSting
@AllArgsConstructor为实体类生成全参构造器
@NoArgsConstructor为实体类生成无参构造器
fastjson包:用于浏览器与控制层的传递
将java类型转换位json类型:toJSONString()
servlet-api包:浏览器与控制层链接
dbutils包:封装jdbc代码
QueryRunner 数据库操作类,需要传入数据源
query()执行查询sql语句
update()执行添加,修改,删除sql语句
结果集处理类
注意:实体类的属性要和数据库中的表字段要一致
BeanHandler将查询的结果以java对象形式返回
beanLIstHandler将查询的结果以List集合形式返回
ScalarHandler将查询结果的第一个值返回 ,一般查询总条数时使用。
druid包:数据库连接池包
DBPool.java链接池类,包含了数据库链接信息
java包结构
com开头:网络工程,org开头:开源项目
controller(控制层)
service(业务层)
impl(业务层实现)
dao(持久层)
impl(持久层实现)
pojo/entity/javabean(实体类包)
util(工具包)
form表单
属性
action:提交地址,写入要提交到的Servlet的地址
method:提交表单方式
get提交:明文提交,表单内容会在浏览器中显示,默认的提交方式,一般谨慎使用
post提交:密文提交,表单的内容不会在浏览器上显示,一般都是使用这种提交方式
enctype="multipart/form-data"
上传文件需要设置的属性
servlet
HttpServlet 专门用于HTTP请求处理的servlet所以所有的控制层都应该继承该类与浏览器交互
@WebServlet value的值是访问该Servlet的地址
doGet():用于处理get请求,比如超链接,直接在浏览器地址栏输入,一般默认都是get请求
doPost():当设置请求为post,比如表单method=“post”,ajax的type:"post"
HttpServletRequset:该类携带了浏览器的数据,通过该类获取浏览器传递过来的参数
HttpServletResponse:相应,后台给浏览器返回数据
resp.getWriter().writer()
BaseServlet:自定义工具类,继承HttpServlet,用于整合doGet和doPost请求和其他公共代码
统一的接收参数getParam()
设置统一的字符集utf-8
jsp
浏览器无法直接解析,而是将java将jsp文件转成servlet,而是通过字符输出流输出给浏览器
jsp出现的愿因:早期技术匮乏,前端页面与java结合出现的产物
现在有了ajax,更方便的前后端交互的技术,jsp慢慢的被淘汰了。
作用域
pageContext:当前页面,基本不会使用
request:请求;一次请求
session:一次会话
主要用于保存登录的用户信息
HttpSession session = req.getSession();
存储数据:session.setAttribute("login",user);
拿取数据:getAttribute("login)
application:全局
生命周期
实例化:在项目启动时实例化
初始化(init方法):在实例化之后进行初始化
提供服务(service方法):HttpServlet将service方法分成了odGet和doPost两个方法
销毁(destroy销毁):结束程序运行执行的方法
过滤器Filter
概念:过滤请求,可以在进入servlet之前,可以做一些预处理或者进行拦截。
@WebFilter("/")将自定义监听器
通过web xml进行配置
代码演示
监听器Listener
概念:剋以对四大作用域进行监听,项目启动时会一直执行
地址匹配规则
路径匹配,比如:/loginServlet
全局匹配,/*
缺省值 /,如果没有别的servlet匹配成功,则该servlet会执行。
后缀名。*.do 或*.action
更多推荐
所有评论(0)