SpringMvc+Spring+Mybatis 整合

1.导jar包
2.整合mybatis+Spring
①建表
②dao
③spring.xml

	<!-- 开启注解扫描 --><!-- service 位置 -->
	<context:component-scan base-package="com.yangyang" />
	<!-- 引入小配置文件 -->
	<context:property-placeholder location="classpath:jdbc.properties" />
	<!-- 创建数据源 -->
	<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
		<property name="driverClassName" value="${jdbc.drivcer}"/>
		<property name="url" value="${jdbc.url}"/>
		<property name="username" value="${jdbc.name}"/>
		<property name="password" value="${jdbc.password}"/>
	</bean>
	<!-- 创建sqlsessionFactory -->
	<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean" >
		<property name="dataSource" ref="dataSource" />
		<property name="typeAliasesPackage" value="com.yangyang.entity" />
		<property name="mapperLocations" value="classpath:com/yangyang/mapper/*Mapper.xml" />
	</bean>
	<!-- 创建DAO对象 -->
	<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer" >
		<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />
		<property name="basePackage" value="com.yangyang.dao" />
	</bean>
	<!-- 创建事务管理 -->
	<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager" >
		<property name="dataSource" ref="dataSource" />
	</bean>
	<!-- 开启注解式事务生效 -->
	<tx:annotation-driven transaction-manager="transactionManager" />

④开发Mapper.xml
⑤开发Service

@Service("userService")
@Transactional
public class UserServiceIMP implements UserService {
	//貌似是自动注入
	@Autowired
	private UserDAO userDAO;

	public void add(User user) {
		user.setId(UUID.randomUUID().toString());
		System.out.println(user);
		userDAO.save(user);
	}

	

	@Override
	public User questId(String id) {
		User questId = userDAO.questId(id);
		return questId;
	}


⑥Test测试类

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:spring.xml")
public class UserTest {
	@Autowired
	private UserService userService;
	@Autowired
	private Z_UserService z_UserService;
	@Test
	public void Test1(){
		List<User> quesrALL = userService.quesrALL();
		System.out.println(quesrALL);
	}
}

3.加入Spring开发

		<!-- 开启注解扫描 -->
		<context:component-scan base-package="com.yangyang.controller"/>
		<!-- 注册处理器适配器和处理映射器 -->
		<mvc:annotation-driven></mvc:annotation-driven>
		<!-- 配置视图解析器 -->
		<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" >
			<property name="prefix" value="/ems1.0/"/>
			<property name="suffix" value=".jsp"/>
		</bean>
		<!-- 处理静态资源拦截问题 -->
		<mvc:default-servlet-handler/>	

②创建包 controller

@Controller
@RequestMapping("user")
public class UserController {
	@Autowired
	private UserService userService;
	@RequestMapping("list")
	public String questALL(HttpServletRequest request,HttpServletResponse response){
		List<User> quesrALL = userService.quesrALL();
		request.setAttribute("list", quesrALL);
		return "emplist";
	}
	@RequestMapping("update")
	public String update(HttpServletRequest request,HttpServletResponse response,User user){
		System.out.println(user);
		userService.update(user);
		return "redirect:/user/list";
	}

③配置web.xml

<!-- 配置springmvc核心servlet -->
  <servlet>
	  <servlet-name>springmvc</servlet-name>
	  <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
	  <init-param>
	  	<param-name>contextConfigLocation</param-name>
	  	<param-value>classpath:springmvc.xml</param-value>
	  </init-param>
  </servlet>
  
  <servlet-mapping>
  	<servlet-name>springmvc</servlet-name>
  	<url-pattern>/</url-pattern>
  </servlet-mapping>
  
  
  <!-- 解决post方式中文乱码问题 -->
  <filter>
  	<filter-name>encoding</filter-name>
  	<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
  	<init-param>
  		<param-name>encoding</param-name>
  		<param-value>UTF-8</param-value>
  	</init-param>
  	<init-param>
  		<param-name>forceEncoding</param-name>
  		<param-value>true</param-value>
  	</init-param>
  </filter>
  
  <filter-mapping>
  	<filter-name>encoding</filter-name>
  	<url-pattern>/*</url-pattern>
  </filter-mapping>
  
  <!-- 启动spring工厂监听器 -->
  <listener>
  	<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
  <!-- 加载工厂配置文件所在位置 -->
  <context-param>
  	<param-name>contextConfigLocation</param-name>
  	<param-value>classpath:spring.xml</param-value>
  </context-param>

猜你喜欢

转载自blog.csdn.net/weixin_42780730/article/details/82861187