Spring整合mybatis 1 查询

来源:互联网 发布:破解激活码软件 编辑:程序博客网 时间:2024/06/01 16:50

框架如图:


web.xml文件代码

<?xml version="1.0" encoding="UTF-8"?><web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">  <!-- 1.spring监听 --><context-param><param-name>contextConfigLocation</param-name><param-value>/WEB-INF/spring-mybatis.xml</param-value></context-param><!--spring--><listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener><!-- 2.springmvc --><servlet>  <servlet-name>springmvc</servlet-name>  <servlet-class> org.springframework.web.servlet.DispatcherServlet</servlet-class>  <init-param>    <param-name>contextConfigLocation</param-name>    <param-value>/WEB-INF/spring-mvc.xml</param-value>  </init-param></servlet><servlet-mapping>  <servlet-name>springmvc</servlet-name>  <url-pattern>/</url-pattern></servlet-mapping><!-- 3.字符编码处理 --><filter>          <filter-name>encodingFilter</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>      </filter>      <filter-mapping>          <filter-name>encodingFilter</filter-name>          <url-pattern>/*</url-pattern>      </filter-mapping></web-app>

spring-mvc.xml代码

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context"  xmlns:mvc="http://www.springframework.org/schema/mvc"  xsi:schemaLocation="      http://www.springframework.org/schema/beans       http://www.springframework.org/schema/beans/spring-beans-3.0.xsd      http://www.springframework.org/schema/context      http://www.springframework.org/schema/context/spring-context-3.0.xsd      http://www.springframework.org/schema/mvc      http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd      ">     <!-- 默认扫描包路径,扫描控制器 -->    <context:component-scan base-package="com.controller"></context:component-scan><!-- 注解驱动 --><mvc:annotation-driven/><!-- 视图解析器 -->      <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">          <property name="prefix" value="/" />          <property name="suffix" value=".jsp" />      </bean> </beans>

spring-mybatis.xml代码

<?xml version="1.0" encoding="UTF-8"?><beansxmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:p="http://www.springframework.org/schema/p"xmlns:context="http://www.springframework.org/schema/context"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsdhttp://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context-3.0.xsd"><!-- 1.自动扫描 --><context:component-scan base-package="com"></context:component-scan><!-- 2.配置数据源,就是原来mybatis的代码,此处使用dbcp数据源连接池 --><bean id="datasource" class="org.apache.commons.dbcp.BasicDataSource"><property name="driverClassName" value="oracle.jdbc.OracleDriver"/><property name="url"  value="jdbc:oracle:thin:@192.168.62.250:1521:orcl"/><property name="username"        value="scott"/><property name="password"        value="tiger"/></bean><!-- 3.配置sqlSessionFactory --><bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"><property name="dataSource" ref="datasource"/><!-- 数据源连接池 --><property name="mapperLocations" value="classpath:com/mapper/*.xml"></property></bean><!-- 4.mapper扫描器 --><bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"><property name="basePackage" value="com.dao"/><property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/></bean></beans>

src下框架各个包中的代码实现;

实体类,Emp类

package com.entity;public class Emp {private int empNo;private String eName;private String salary;public int getEmpNo() {return empNo;}public void setEmpNo(int empNo) {this.empNo = empNo;}public String geteName() {return eName;}public void seteName(String eName) {this.eName = eName;}public String getSalary() {return salary;}public void setSalary(String salary) {this.salary = salary;}}

EmpDao接口

package com.dao;import java.util.List;import java.util.Map;import com.entity.Emp;public interface EmpDao {  public List<Emp> search();}

mapper.xml映射文件

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="com.dao.EmpDao"><select id="search" resultType="com.entity.Emp">select empno ,ename , sal from emp</select></mapper>

Service接口

package com.service;import java.util.List;import com.entity.Emp;public interface IEmpService {List<Emp> getList();}

Service接口的实现类

package com.service.impl;import java.util.List;import javax.annotation.Resource;import org.springframework.stereotype.Component;import com.dao.EmpDao;import com.entity.Emp;import com.service.IEmpService;@Componentpublic class EmpServiceImpl implements IEmpService{@Resourceprivate EmpDao empDao;public List<Emp> getList() {return empDao.search();}}

控制器代码实现:

package com.controller;import java.util.List;import javax.annotation.Resource;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.web.bind.annotation.RequestMapping;import com.entity.Emp;import com.service.IEmpService;@Controller@RequestMapping("/emp")public class EmpController {@Resourceprivate IEmpService service;@RequestMapping("/list")public String toIndex(Model model){List<Emp> emps=service.getList();System.out.println(emps.size()+".......");model.addAttribute("eno", emps.size());model.addAttribute("empList", emps);return "list";}}
视图层页面代码如下:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html>  <head>    <base href="<%=basePath%>">    <title>My JSP 'index.jsp' starting page</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0">    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page">  </head>    <body>ddd    ${eno }     <c:forEach items="${empList}" var="emp">         ${emp.eName} <br/>     </c:forEach>  </body></html>


显示结果是oracle中实例表,Emp表中的数据显示在页面。


0 0
原创粉丝点击