SpringMVC+JDBC

来源:互联网 发布:ssm框架oa系统源码 编辑:程序博客网 时间:2024/05/22 06:19

使用springMVC框架,采用JDBC操作数据库,实现一个注册的小例子

1,导入相应的jar包

 

2,项目的框架以及包的分类

         

3,web.xml的配置

<servlet>
  <servlet-name>spring</servlet-name>

  <servlet-class>

      org.springframework.web.servlet.DispatcherServlet

  </servlet-class>

  <!-- 可以修改spring-servlet的路径  默认在web-inf下面 使用默认的时候可以不写-->
  <!-- <init-param>
        <param-name>contextConfigLocation</param-name>         
        <param-value>/WEB-INF/spring-servlet.xml</param-value>  默认
  </init-param> -->
  <load-on-startup>1</load-on-startup>
  </servlet>
  <!-- 拦截.do的请求 -->
  <servlet-mapping>
      <servlet-name>spring</servlet-name>
      <url-pattern>*.do</url-pattern>
  </servlet-mapping>
  <!-- spring的配置 -->
  <listener>
      <listener-class>
         org.springframework.web.context.ContextLoaderListener
      </listener-class>

  </listener>
  <!-- 指定加载spring的配置文件 -->
    <context-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>classpath*:applicationContext*.xml</param-value>

    </context-param>

4,spring-servlet.xml的配置

  <!-- 启动spring mvc的注解 -->
  <context:annotation-config/>
  <!-- 设置使用注解的类所在的jar包 -->
  <context:component-scan base-package="com.demo"/>    
  <!-- 完成请求和注解POJO的映射 -->
  <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" />
  <!-- 对转向页面的路径解析。prefix:前缀, suffix:后缀  -->
  <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"

   p:prefix="/" p:suffix=".jsp" />

   

5,jdbc-mysql.properties文件

 jdbc.driverClassName=com.mysql.jdbc.Driver
 jdbc.url=jdbc:mysql://localhost:3306/test?useUnicode=true

 &characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull
 jdbc.username=root
 jdbc.password=123456
 jdbc.maxPoolSize=15
 jdbc.minPoolSize=1
 jdbc.initialPoolSize=1
 jdbc.idleConnectionTestPeriod=1800
 jdbc.maxIdleTime=3600

6,spring的配置文件applicationContext.xml

  <!-- 加载jdbc的配置文件 -->
  <context:property-placeholder location="classpath:jdbc-mysql.properties" />
 
  <!-- com.demo包下面的类标记spring注解的类自动转化Bean 同时完成Bean的注入 -->
  <context:component-scan base-package="com.demo" />

  <!-- 配置数据源DataSource -->
  <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
  <property name="driverClass">
    <value>${jdbc.driverClassName}</value>
    </property>
      <property name="jdbcUrl">
        <value>${jdbc.url}</value>
      </property>
      <property name="user">
         <value>${jdbc.username}</value>
      </property>
      <property name="password">
         <value>${jdbc.password}</value>
      </property>
      <property name="maxPoolSize">
         <value>${jdbc.maxPoolSize}</value>
      </property>
      <property name="minPoolSize">
          <value>${jdbc.minPoolSize}</value>
      </property>
      <property name="initialPoolSize">
          <value>${jdbc.initialPoolSize}</value>
      </property>
      <property name="idleConnectionTestPeriod">
          <value>${jdbc.idleConnectionTestPeriod}</value>
      </property>
      <property name="maxIdleTime">
         <value>${jdbc.maxIdleTime}</value>
      </property>
     </bean>
   
 <!-- 配置JDBC的模板 -->
  <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
     <property name="dataSource" ref="dataSource"></property>
  </bean>
   
 <!-- 配置事务管理器,使用spring来管理hibernate的事务 -->
  <bean id="transactionManager"
    class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
   <property name="dataSource" ref="dataSource"></property>
  </bean>

 

7,BaseDao类的代码

   public class BaseDao implements IBaseDao {

    @Autowired
    private JdbcTemplate jdbcTemplate;
    //注册的方法
    public int insert(String sql,Object[] params) {
        
        return jdbcTemplate.update(sql, params);
        
    }
  }
8,UsersDao类的代码

   @Repository("userDao")
   public class UserDao extends BaseDao implements IUserDao {
    public int insert_Users(Users users) {
        String sql="insert into Users(name,pwd)  values(?,?)";
        Object[] params=new Object[]{users.getName(),users.getPwd()};
        return super.insert(sql,params);
    }
  }

9,UsersServlet类的代码


  @Service("userServlet")
  public class UserServlet implements IUserServlet {
 
    @Autowired
    private IUserDao userDao;
    public int insert_User(Users users) {
        return userDao.insert_Users(users);
    }
 }

10,Users.Add.action类的代码


 @Controller
 @RequestMapping("/Users/Add.do")
 public class Add_User {

    @Autowired
    public IUserServlet userServlet;
    @RequestMapping(params = "method=aa")
    public String Add(String username,String password){
        System.out.println("哈哈哈");
        System.out.println("name:"+username);
        System.out.println("pwd:"+password);
        Users users=new Users(username, password);
        int a=userServlet.insert_User(users);
        if(a!=0){
            return "SCCE";
        }    
        return "ERROR";
    }
}

11,注册的jsp页面

   <form action="/SpringMVC_JDBC/Users/Add.do?method=aa" method="post">
       用户名:<input type="text" name="username"><br/>
       密码  :<input type="text" name="password"><br/>
       <input type="submit" value="注册">            
   </form>

 

   

0 0
原创粉丝点击