spring+springmvc+mybits整合查询(eclipse)

工程结构

Spring配置文件

<?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: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-4.3.xsd

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

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

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

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

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

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

            <!-- 1.扫描有注解的包 -->

            <context:component-scan base-package="com.ssm"></context:component-scan>

 

            <!-- 2.加载properties文件 -->

            <context:property-placeholder location="classpath:dbinfo.properties"/>

                  

            <!-- 3.配置数据源 -->

            <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">

                   <!-- 链接数据库必须的四个属性 -->

                   <property name="driverClass" value="${jdbc.driverClass}"></property>

                   <property name="jdbcUrl" value="${jdbc.jdbcUrl}"></property>

                   <property name="user" value="${jdbc.user}"></property>

                   <property name="password" value="${jdbc.password}"></property>

            </bean>

           

            <!-- 4.配置事务工厂sessionFactory -->

            <bean id="sessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">

                   <property name="configLocation" value="classpath:SqlMapConfig.xml"></property>

                   <property name="dataSource" ref="dataSource"></property>

            </bean>

           

            <!-- 5.配置扫描器 扫描mapper包 生成实现类 -->

            <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">

                   <property name="sqlSessionFactoryBeanName" value="sessionFactory"></property>

                   <property name="basePackage" value="com.ssm.mapper"></property>

            </bean>

 

  </beans>

dbinfo.properties  数据库配置文件

jdbc.driverClass=com.mysql.jdbc.Driver

jdbc.jdbcUrl=jdbc:mysql://localhost:3306/test?unicode=true&characterEncoding=utf-8

jdbc.user=root

jdbc.password=0000

applicationContext-transaction.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: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-4.3.xsd

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

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

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

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

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

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

            <!-- 事务的配置 -->

            <!-- 1.事务的管理器 -->

            <bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">

                   <property name="dataSource" ref="dataSource"></property>

            </bean>

            <!-- 2.配置事务详情 -->

            <tx:advice id="myAdvice" transaction-manager="txManager">

                   <tx:attributes>

                   <!-- propagation="REQUIRED" 事务传递级别 -->

                          <tx:method name="save*" propagation="REQUIRED" read-only="false"/>

                          <tx:method name="insert*" propagation="REQUIRED" read-only="false"/>

                          <tx:method name="update*" propagation="REQUIRED" read-only="false"/>

                          <tx:method name="delete*" propagation="REQUIRED" read-only="false"/>

                          <tx:method name="find*" propagation="NOT_SUPPORTED" read-only="true"/>

                          <tx:method name="select*" propagation="NOT_SUPPORTED" read-only="true"/>

                          <tx:method name="search*" propagation="NOT_SUPPORTED" read-only="true"/>

                   </tx:attributes>

            </tx:advice>

            <!-- 3.配置aop  把事务织入到目标方法中 -->

            <aop:config>

                   <aop:advisor advice-ref="myAdvice" pointcut="execution(* com.ssm.service.impl.*.*(..))"/>

            </aop:config>

  </beans>

  log4j.properties   日志配置文件

log4j.rootLogger = DEBUG,C,F

#\u8F93\u51FA\u5230\u63A7\u5236\u53F0

log4j.appender.C=org.apache.log4j.ConsoleAppender

log4j.appender.C.Target = System.out

log4j.appender.C.layout = org.apache.log4j.PatternLayout

log4j.appender.C.layout.ConversionPattern =%-d{ yyyy-MM-dd HH:mm:ss}-[%p %F:%L]  %m%n

#\u8F93\u51FA\u5230\u6587\u4EF6

log4j.appender.F = org.apache.log4j.DailyRollingFileAppender

log4j.appender.F.File =G\:javaprojlogmyproj.log

log4j.appender.F.Append = true

log4j.appender.F.Threshold = DEBUG

log4j.appender.F.layout=org.apache.log4j.PatternLayout

log4j.appender.F.layout.ConversionPattern=%-d{ yyyy-MM-dd HH\:mm\:ss}-[%p %F\:%L]  %m%n

springmvc.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: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-4.3.xsd

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

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

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

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

    

     <!-- 扫描注解 --> 

     <context:component-scan base-package="com.ssm"></context:component-scan>

      <!-- 映射器  适配器 -->

      <mvc:annotation-driven></mvc:annotation-driven>

      

      <!-- 静态资源能够访问 -->

      <mvc:resources location="/static/" mapping="/static/**"></mvc:resources>

    

      <!-- 视图解析器 -->

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

           <property name="suffix" value=".jsp"></property>

           <property name="prefix" value="/WEB-INF/jsp/"></property>

      </bean>

    

  </beans>

SqlMapConfig.xml 

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE configuration

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

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

<!-- 配置相关信息-->

<configuration>

      

</configuration>

————————————————————————————————————————————————————————

UserMapper 接口

package com.ssm.mapper;

import java.util.List;

import com.ssm.pojo.User;

public interface UserMapper {

public List<User> findAll();

public void save(User user);

       public void update(User user);

       public void delete(int user);

}

UserMapper.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" >

<!-- namespace 要和接口一致 -->

<mapper namespace="com.ssm.mapper.UserMapper">

       <select id="findAll" resultType="com.ssm.pojo.User">

              select * from test

       </select>

       <insert id="save" parameterType="com.ssm.pojo.User">

              insert into test(password,name) value(#{name},#{password})

       </insert>

       <update id="update" parameterType="com.ssm.pojo.User">

              update  test set password = #{password},name=#{name} where id=#{id}

       </update>

      

       <delete id="delete" parameterType="int">

              delete from test where id=#{id}

       </delete>

      

</mapper>

User 实体类

package com.ssm.pojo;

public class User {

       private int id;

       private String name;

       private String password;

       public int getId() {

              return id;

       }

       public void setId(int id) {

              this.id = id;

       }

       public String getName() {

              return name;

       }

       public void setName(String name) {

              this.name = name;

       }

       public String getPassword() {

              return password;

       }

       public void setPassword(String password) {

              this.password = password;

       }

       @Override

       public String toString() {

              return "user [id=" + id + ", name=" + name + ", password=" + password + "]";

       }

      

}

UserServce  接口

package com.ssm.service;

import java.util.List;

import com.ssm.pojo.User;

public interface UserServce {

public List<User> findAll();

        

         public void save(User user);

         public void update(User user);

         public void delete(int user);

}

UserServiceImpl  

package com.ssm.serviceimpl;

import java.util.List;

import javax.annotation.Resource;

import org.springframework.stereotype.Service;

import com.ssm.mapper.UserMapper;

import com.ssm.pojo.User;

import com.ssm.service.UserServce;

@Service

public class UserServiceImpl implements UserServce {

         //注入mapper

         @Resource

         private UserMapper usermapper;

        

        

         @Override

         public List<User> findAll() {

                  // TODO Auto-generated method stub

                  return usermapper.findAll();

         }

         @Override

         public void save(User user) {

                  // TODO Auto-generated method stub

                  usermapper.save(user);

         }

         @Override

         public void update(User user) {

                  // TODO Auto-generated method stub

                  usermapper.update(user);

         }

         @Override

         public void delete(int user) {

                  // TODO Auto-generated method stub

                  usermapper.delete(user);

         }

UserController 

package com.ssm.controller;

import java.util.List;

import javax.annotation.Resource;

import javax.servlet.http.HttpServletRequest;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;

import com.ssm.pojo.User;

import com.ssm.service.UserServce;

@Controller

public class UserController {

         //注入service

         @Resource

         public  UserServce userservce;

        

        

         @RequestMapping("/show")

    public String show(HttpServletRequest request){

                  List<User> user=userservce.findAll();

                  request.setAttribute("ulist", user);

                  return "show";

         }

}

Jsp 页面

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

 <%@ taglib uri="http://java.sun.com/jsp/jstl/core"  prefix="c"%>

<%

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>show</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">

       <!--

       <link rel="stylesheet" type="text/css" href="styles.css">

       -->

  </head>

 

  <body>

      <span>所有用戶</span>

      <!-- 遍歷所有集合 -->

      <table border="1px" align="center">

      <tr>

                     <td align="center">用戶id </td>

                     <td align="center">用戶名</td>

                     <td align="center">用戶密碼</td>

                     <td align="center">修改</td>

              </tr>

         <c:forEach items="${ulist }" var="u">

              <tr>

                     <td align="center">${u.id }</td>

                     <td align="center">${u.name}</td>

                     <td align="center">${u.password }</td>

                     <td>

                            <!--

                            confirm:确定按钮 取消按钮

                            location.href=url  跳转到url

                             -->

                            <a href="javascript:if(confirm('是否修改?')) location.href='${pageContext.request.contextPath }/toUp/${u.id }'">修改</a>

                            <a id="del" href="${u.id}" >删除</a>

                     </td>

              </tr>

       </c:forEach>

       </table>

  </body>

</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值