1DispatcherServlet
web.xml配置
(1)设置根上下文配置文件位置<context-param>
(2)注册ContextLoader-Listener
(3)注册DispatcherServlet,注:DispatcherServlet会根据Servlet的名字找到加载应用上下文的文件。
如:DispatcherServlet的名字时appServlet,则加载应用上下文的文件时/WEB-INF/spring/appServlet/servlet-context.xml
(4)将DispatcherServlet映射到"/"
或java类继承AbstractAnnotationConfigDispatcherServletInitializer
2启用springmvc
(1)启用springmvc:注解驱动<mvc:annotation-driver>或@EnableWebMvc
(2)启用组件扫描ComponentScan
(3)配置jsp视图解析器InternalResourceViewResolver
(4)配置静态资源处理(DefaultServletHandlerConfigurer)
3控制器
(1)声明控制器@Controller
(2)声明所要处理的请求@RequestMapping(value="/",method=GET)
(3)返回视图名return "home"
4测试springmvc控制器
mock
5向模型添加数据
(1)Model model
model.addAttribute(key,value);
(2)Map map
如果想使用非spring类型,可以用java.util.Map来代替Model
map.put(key,value);
6向控制器中传递数据
(1)查询参数
访问方式:
/spittels?max=238900&count=50
方法形参:
@RequestParam(value="max",defaultValue="")long max,
@RequestParam(value="count",defaultValue="20")int count
(2)路径变量
访问方式:
/spittles/12345
路径变量/spittles/12345发起get请求的方式要优于“/spittles/show?pittle_id=12345",前者能够识别出要查询的资源
方法前@RequestMapping(value="/{spittleId}",method=RequestMethod.GET)
形参前@PathVariable("spittleId")long spittleId,如果占位符名称与方法参数名相同,@PathVariable的value属性可省略
(3)表单参数
方法参数:
Spitter spitter 将会自动使用请求中同名的属性进行填充
(4)校验表单
Spitter类
属性上添加注解
处理器方法启用校验功能
方法参数 @Valid Spitter spitter,Errors errors
if(errors.hasErrors()){return "registerForm";}
sql地址加参数:useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai
&写成&
mybatis
1组件
SqlSessionFactoryBuilder(构造器)
SqlSessionFactory(工厂接口)
SqlSession:是一个既可以发送sql去执行并返回结果,也可以获取Mapper的接口。类似jdbc的connection对象
SQL Mapper:由一个java接口和xml文件(或注解)构成,需要给出对应的sql和映射规则。负责发送sql去执行,并返回结果
2org.apache.ibatis.session.Configuration
将mybatis xml配置文件保存到Configuration类对象中,方便读取,性能高,可以反复使用。
3配置
(1)数据源:获取数据库连接实例
(2)事务管理器:决定事务范围和控制方式
(3)映射器:引入xml(定义参数类型;描述缓存;描述sql语句;定义查询结果和pojo的映射关系)
(4)别名
mybatis配置xml文件的层次结构
<configuration>配置
<properties>属性
<settings>设置
<typeAliases>类型命名
<typeHandlers>类型处理器
<objectFactory>对象工厂
<plugins>插件
<environments>配置数据源,可配置多个
<environment>数据源
<transactionManager>事务管理器
<dataSource>数据源
<databaseIdProvider>数据库厂商标识
<mappers>映射器
mybatis-spring配置
(1)配置数据源
(2)配置SqlSessionFactory
mybatis提供org.mybatis.spring.SqlSessionFactoryBean,我们在其中需要
给出三个参数,
1)dataSource
2)configLocation
3)配置Mapper,mapperLocation(mapperLocation)也可在mybatis配置文件配置。
(3)配置自动扫描
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="cn.temptation.dao"/>
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
<!--表示类被Repository注解标识时,才进行扫描 <property name="annotationClass" value="org.sprinngframework.stereotype.Repository"/> -->
</bean>
(4)事务处理----?
(5)配置SqlSessionTemplate(定制化编程使用,会覆盖SqlSessionTemplate)