springmvc经典教程(2)
admin
2023-05-20 11:22:55
0次

springmvc教程系列

springmvc史上最好教程(2)

springmvc史上最好教程(1)

springmvc史上最好教程(3)

springmvc史上最好教程(4)


一、整合mybatis

为了更好的学习 springmvc和mybatis整合开发的方法,需要将springmvc和mybatis进行整合。

 

整合目标:控制层采用springmvc、持久层使用mybatis实现。

 

1.1 需求

实现商品查询列表,从MySQL数据库查询商品信息。

 

1.2 jar包

 

包括:spring(包括springmvc)、mybatis、mybatis-spring整合包、数据库驱动、第三方连接池。

 

1.3 Dao

目标:

1、spring管理SqlSessionFactory、mapper

 

1.3.1 sqlMapConfig.xml

 

在classpath下创建mybatis/sqlMapConfig.xml

 

  

  

  

PUBLIC "-//mybatis.org//DTD Config 3.0//EN"  

  

"http://mybatis.org/dtd/mybatis-3-config.dtd">  

  

  

  

  

  

  

  

  

  

  

  

  



1.3.2 applicationContext-dao.xml

配置数据源、事务管理,配置SqlSessionFactory、mapper扫描器。

 

  

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc"  

  

xmlns:context="http://www.springframework.org/schema/context"  

  

xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"  

  

xsi:schemaLocation="http://www.springframework.org/schema/beans  

  

http://www.springframework.org/schema/beans/spring-beans-3.2.xsd  

  

http://www.springframework.org/schema/mvc  

  

http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd  

  

http://www.springframework.org/schema/context  

  

http://www.springframework.org/schema/context/spring-context-3.2.xsd  

  

http://www.springframework.org/schema/aop  

  

http://www.springframework.org/schema/aop/spring-aop-3.2.xsd  

  

http://www.springframework.org/schema/tx  

  

http://www.springframework.org/schema/tx/spring-tx-3.2.xsd ">  

  

  

  

  

  

  

  

  

  

         

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

   

  

  

  

  

  

  



1.3.3 ItemsMapper.xml

 

  

  

  

PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"  

  

"http://mybatis.org/dtd/mybatis-3-mapper.dtd">  

  

  

  

  

  

  

  

  

  

  

  

  

  

and items.name like '%${items.name}%'  

  

  

  

  

  

  

  

  

  

  

  

select * from items  

  

  

  

  

  

  

  

  

  

  



1.3.4 ItemsMapper.java

 

public interface ItemsMapper {  

  

//商品列表  

  

public List findItemsList(QueryVo queryVo) throws Exception;  

  

}  



1.4 Service

目标:

1、Service由spring管理

2、spring对Service进行事务控制。

 

1.4.1 applicationContext-service.xml

配置service接口。

 

1.4.2 applicationContext-transaction.xml

配置事务管理器。

 

  

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc"  

  

xmlns:context="http://www.springframework.org/schema/context"  

  

xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"  

  

xsi:schemaLocation="http://www.springframework.org/schema/beans  

  

http://www.springframework.org/schema/beans/spring-beans-3.2.xsd  

  

http://www.springframework.org/schema/mvc  

  

http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd  

  

http://www.springframework.org/schema/context  

  

http://www.springframework.org/schema/context/spring-context-3.2.xsd  

  

http://www.springframework.org/schema/aop  

  

http://www.springframework.org/schema/aop/spring-aop-3.2.xsd  

  

http://www.springframework.org/schema/tx  

  

http://www.springframework.org/schema/tx/spring-tx-3.2.xsd ">  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

    

  

       

  

      

  

      

  

      

  

      

  

      

  

      

  

    

  

  

  

  

  

  

  

  

  

  pointcut="execution(* com.sihai.springmvc.service.impl.*.*(..))"/>  

  

  

  

  



1.4.3 OrderService


public interface OrderService {  

  

//商品查询列表  

  

public List findItemsList(QueryVo queryVo)throws Exception;  

  

}  

  

@Autowired  

  

private ItemsMapper itemsMapper;  

  

@Override  

  

public List findItemsList(QueryVo queryVo) throws Exception {  

  

//查询商品信息  

  

return itemsMapper.findItemsList(queryVo);  

  

}  

  

}  



1.5 Action

 

1.5.1 springmvc.xml

 

  

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc"  

  

xmlns:context="http://www.springframework.org/schema/context"  

  

xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"  

  

xsi:schemaLocation="http://www.springframework.org/schema/beans  

  

http://www.springframework.org/schema/beans/spring-beans-3.2.xsd  

  

http://www.springframework.org/schema/mvc  

  

http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd  

  

http://www.springframework.org/schema/context  

  

http://www.springframework.org/schema/context/spring-context-3.2.xsd  

  

http://www.springframework.org/schema/aop  

  

http://www.springframework.org/schema/aop/spring-aop-3.2.xsd  

  

http://www.springframework.org/schema/tx  

  

http://www.springframework.org/schema/tx/spring-tx-3.2.xsd ">  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

class="org.springframework.web.servlet.view.InternalResourceViewResolver">  

  

  

value="org.springframework.web.servlet.view.JstlView" />  

  

  

  

  

  

  

  

  



1.5.2 web.xml

 

加载spring容器,配置springmvc前置控制器。

 

  

  

  

xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"  

  

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"  

  

id="WebApp_ID" version="2.5">  

  

springmvc  

  

  

  

  

  

contextConfigLocation  

  

/WEB-INF/classes/spring/applicationContext.xml,/WEB-INF/classes/spring/applicationContext-*.xml  

  

  

  

  

  

org.springframework.web.context.ContextLoaderListener  

  

  

  

  

  

  

  

CharacterEncodingFilter  

  

org.springframework.web.filter.CharacterEncodingFilter  

  

  

  

encoding  

  

utf-8  

  

  

  

  

  

  

  

CharacterEncodingFilter  

  

/*  

  

  

  

  

  

  

  

springmvc  

  

org.springframework.web.servlet.DispatcherServlet  

  

  

  

  

  

contextConfigLocation  

  

classpath:spring/springmvc.xml  

  

  

  

1  

  

  

  

  

  

springmvc  

  

*.action  

  

  

  

  

  

index.html  

  

index.htm  

  

index.jsp  

  

default.html  

  

default.htm  

  

default.jsp  

  

  

  

  

  

1.5.3 OrderController


@Controller  

  

public class OrderController {  

  

@Autowired  

  

private OrderService orderService; 

  

@RequestMapping("/queryItem.action") 

public ModelAndView queryItem() throws Exception {  

  

// 商品列表  

  

List itemsList = orderService.findItemsList(null); 

  

// 创建modelAndView准备填充数据、设置视图  

  

ModelAndView modelAndView = new ModelAndView();  

  

// 填充数据  

  

modelAndView.addObject("itemsList", itemsList);  

  

// 视图  

  

modelAndView.setViewName("order/itemsList");  

  

return modelAndView;  

  

}  

  

}  

  

1.6 测试

http://localhost:8080/springmvc_mybatis/queryItem.action


相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...