前言:创建一个标准的动态web工程。在src目录下新建以下几个包:
1、com.zhiyuan.frank.controller(放controller类,而controller类是指SpringMVC中的C,表示控制器,业务的逻辑都写在该类中)
2、com.zhiyuan.frank.pojo(放实体类文件,而实体类是指数据库表示的类,也就是数据表中有的字段,在该类中所有属性表示,也就是MVC中M层)
3、com.zhiyuan.frank.mapper(放接口和实体映射文件,接口就是我们自己定义的操作数据库的方法,要求该接口中的方法名必须要和实体映射文件里面SQL操作的id一致)
在src目录下新建一个文件夹用于存放配置文件(spring+mybatis),取名为config。
把所有的依赖jar包都放到WEB-INF目录下的lib文件夹里面(没有lib文件夹就自己建一个)。
其它的jsp页面都放在WEB-INF目录下的pages文件夹里面(没有就自己建一个)
- 依赖的包必不可少(spring+springmvc+mybatis+他们整合需要的依赖包)
- 分别配置他们的主配置文件
2.1:web.xml
--1、中央前端控制器(鼠标空白区,alt+/, #dispatchServlet,回车)它的结构:
<servlet>
<servlet-name>SpringMVC配置文件的名字,自定义
<servlet-class>dispa alt+/选择#dispatchServlet
</servlet>
<servlet-mapping>
<servlet-name>是上面的servlet-name名一样
<url-partn>/
</servet-mapping>
--2、容器启动监听器(鼠标点击空白区,alt+/,回车,选择#xxxlistener)
<listener>
<context-param>
<param-nema>contextConfigLocation
<param-value>这里写Spring.xml的文件所在路径
</context-param>
<listener-class>有现成的,不改变</listener-class>
</listener>
--3、字符编码过滤器(如果有多个过滤器,那字符编码要写在所有过滤器的前面。Ctrl+shift+t搜索characterEncodeingFilter可以复制它的全路径,并且初始化它的三个属性的值,encoding:UTF-8 支持中文;forceRequestEncoding 所有的请求都将过滤一遍,支持中文;forceResponseEncoding 所有的相应一遍也将过滤器,支持中文)结构如下:
<filter>
<filter-name>
</filter-class>
<init-param>
</filter>
<filter-mapping>
<filter-name>
<url-parrn>
</filter-mapping>
2.2:springMVC-servlet.xml
--1、配置视图资源解析器(<bean class=”internal alt+/” 前缀:prefix ,后缀:suffix)
--2、开启注解功能,并扫描包
<context:component-scan base-package="控制器所在的包路径"></context:component-scan>
2.3:applicationContext.xml
--1、数据源(basicDataSource,里面有四个属性,分别是:加载驱动、连接路径、用户名、密码)
--2、事务管理(DataSourcetransactionManager,里面有一个属性,并且用ref关联数据源)
--3、SQLsession工厂(三个属性:DataSource数据源、configlocation关联、mapperlocations)
--4、映射扫描包
2.4:mybatisConfig.xml
3、根据业务逻辑编写对应的代码(以一个简单查询为例)
3.1:index.jsp(用户通过点击页面index.jsp的超链接发起请求,请求到后台的controller)
3.2:编写controller,用于接收前端页面发起的请求,并作出业务逻辑处理(逻辑处理指的是在controller的方法里面调用接口层的查询方法。并且把查询方法返回的结果给封装到modelandview里面,返回给客户端查询结果的数据)。
3.3:编写好接口层,并定义好查询方法
3.4:编写好实体类以及实体映射文件
WebContent
--WEB-INF
--Pages(该文件夹由自己创建,名字自取,代表着存放jsp页面)
--Lib(专门放jar包)
Index.xml