Spring04

User .java

package com.bky.beans;

public class User {
    private  String userName;
    private  String passWord;
    private  Integer id;

    public User(String userName, String passWord, Integer id) {
        this.userName = userName;
        this.passWord = passWord;
        this.id = id;
    }
    public User() {
    }
    public User(String userName, String passWord) {
        this.userName = userName;
        this.passWord = passWord;
    }



    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getPassWord() {
        return passWord;
    }

    public void setPassWord(String passWord) {
        this.passWord = passWord;
    }


    @Override
    public String toString() {
        return "User{" +
                "userName='" + userName + '\'' +
                ", passWord='" + passWord + '\'' +
                ", id=" + id +
                '}';
    }
}

UserDaoImpl .java

package com.bky.dao.impl;

import com.bky.beans.User;
import com.bky.dao.UserDao;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.ArrayListHandler;
import org.apache.commons.dbutils.handlers.BeanHandler;
import org.apache.commons.dbutils.handlers.BeanListHandler;

import java.sql.SQLException;
import java.util.ArrayList;

public class UserDaoImpl implements UserDao {

    //其中的query方法很重要
    private  QueryRunner queryRunner;

    public void setQueryRunner(QueryRunner queryRunner) {
        QueryRunner queryRunner1 = new QueryRunner();
        this.queryRunner = queryRunner;
    }

    /**
     * 添加一条数据
     */
    @Override
    public void addUser(User user) {

        try {
            queryRunner.update("insert into t_user(u_name,u_passward) values (?,?)",
                    user.getUserName(),user.getPassWord());
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }
    }

    /**
     * 根据id删除一条数据
     * @param user
     */
    @Override
    public void deleteUserById(User user) {
        try {
            queryRunner.update("delete from t_user where id=?",user.getId());
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }
    }

    /**
     *根据id修改一条数据
     */
    @Override
    public void updateUserById(User user) {
        try {
            queryRunner.update("update t_user set u_passward=? where id=?",user.getPassWord(),user.getId());
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }
    }

    @Override
    public User findUserById(User user) {
        try {
            return queryRunner.query("select *from t_user where id=?",new BeanHandler<User>(User.class),
                    user.getId());
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }
        return null;
    }

    @Override
    public ArrayList<User> findUserByAll(User user) {
        try {
            return  (ArrayList<User>) queryRunner.query("select * from t_user", new BeanListHandler<>(User.class));

        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }
        return  null;
    }

    /**
     * 根据id查询一条数据
     * @param user
     */

}

UserDao .java

package com.bky.dao;

import com.bky.beans.User;

import java.util.ArrayList;

//持久层的接口类
public interface UserDao {
    //添加一条数据
    void addUser(User user);
    //根据id 删除一条数据
    void deleteUserById(User user);
    //根据id 修改一条数据
    void updateUserById(User user);
    //根据id查询一条数据
    User findUserById(User user);
    //查询所有数据
    ArrayList<User> findUserByAll(User user);
}

UserServiceImpl .java

package com.bky.service.impl;

import com.bky.beans.User;
import com.bky.dao.UserDao;
import com.bky.service.UserService;

import java.util.ArrayList;

public class UserServiceImpl implements UserService {
    private UserDao userDao;

    public void setUserDao(UserDao userDao) {
        this.userDao = userDao;
    }

    @Override
    public void addUser(User user) {
        userDao.addUser(user);
    }

    @Override
    public void deleteUserById(User user) {
        userDao.deleteUserById(user);
    }

    @Override
    public void updateUserById(User user) {
        userDao.updateUserById(user);
    }

    @Override
    public User findUserById(User user) {
        return userDao.findUserById(user);
    }

    @Override
    public ArrayList<User> findUserByAll(User user) {
        return userDao.findUserByAll(user);
    }


}

UserService .java

package com.bky.service;

import com.bky.beans.User;

import java.util.ArrayList;

//业务逻辑层的接口类
public interface UserService {
    //添加一条数据
    void addUser(User user);
    //根据id 删除一条数据
    void deleteUserById(User user);
    //根据id 修改一条数据
    void updateUserById(User user);
    //根据id查询一条数据
    User findUserById(User user);
    //查询所有数据
    ArrayList<User> findUserByAll(User user);
}

UserServletImpl .java

package com.bky.servlet.impl;

import com.bky.beans.User;
import com.bky.service.UserService;
import com.bky.servlet.UserServlet;

import java.util.ArrayList;

public class UserServletImpl implements UserServlet {
    private UserService userService;

    public void setUserService(UserService userService) {
        this.userService = userService;
    }

    @Override
    public void addUser(User user) {
        userService.addUser(user);
    }

    @Override
    public void deleteUserById(User user) {
        userService.deleteUserById(user);
    }

    @Override
    public void updateUserById(User user) {
        userService.updateUserById(user);
    }

    @Override
    public User findUserById(User user) {

        return userService.findUserById(user);

    }

    @Override
    public ArrayList<User> findUserByAll(User user) {
      return   userService.findUserByAll(user);
    }


}

UserServlet .java

package com.bky.servlet;

import com.bky.beans.User;

import java.util.ArrayList;

//表现层的接口类
public interface UserServlet {
    //添加一条数据
    void addUser(User user);
    //根据id 删除一条数据
    void deleteUserById(User user);
    //根据id 修改一条数据
    void updateUserById(User user);
    //根据id查询一条数据
    User findUserById(User user);
    //查询所有数据
    ArrayList<User> findUserByAll(User user);
}

UserTest01 .java

package com.bky.test;

import com.bky.beans.User;
import com.bky.servlet.UserServlet;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import java.util.ArrayList;

public class UserTest01 {
    public static void main(String[] args) {
        ApplicationContext applicationContext=new ClassPathXmlApplicationContext("xml/beans.xml");
        UserServlet userServlet = (UserServlet) applicationContext.getBean("userServlet");
//        userServlet.addUser(new User("bbb","ccc"));
//

//        User user = new User();
//        user.setId(8);
//        userServlet.deleteUserById(user);;

//        User user1 = new User();
//        user1.setId(5);
//        user1.setPassWord("aaa");
//        userServlet.updateUserById(user1);

        User user1 = new User();
        user1.setId(1);
        User userById = userServlet.findUserById(user1);
        System.out.println(user1);

//        User user = new User();
//        ArrayList<User> userByAll = userServlet.findUserByAll(user);
//        System.out.println(userByAll);
    }

}

beans.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"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
        https://www.springframework.org/schema/beans/spring-beans.xsd">

    <bean id="userServlet" class="com.bky.servlet.impl.UserServletImpl">
        <property name="userService" ref="userService">

        </property>
    </bean>

    <bean id="userService" class="com.bky.service.impl.UserServiceImpl">
        <property name="userDao" ref="userdao">

        </property>
    </bean>
    <bean id="userdao"  class="com.bky.dao.impl.UserDaoImpl">
        <property name="queryRunner" ref="runner">

        </property>
    </bean>


    <bean id="runner" class="org.apache.commons.dbutils.QueryRunner" scope="prototype">
        <constructor-arg name="ds" ref="datesouce">

        </constructor-arg>
    </bean>

    <bean id="datesouce" class="com.mchange.v2.c3p0.ComboPooledDataSource">
        <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/test01"></property>
        <property name="driverClass" value="com.mysql.jdbc.Driver"></property>
        <property name="user" value="root"></property>
        <property name="password" value="root"></property>
    </bean>
</beans>

所需jar包

在这里插入图片描述

残留问题

在UserSpring项目内
在这里插入图片描述
查询出来的userName和password为空

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值