package com.qst.Dao; import com.qst.entity.User; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.core.RowMapper; import org.springframework.stereotype.Component; import java.sql.ResultSet; import java.sql.SQLException; @Component public class UserDaoImpl implements UserDao{ @Autowired private JdbcTemplate jt; public boolean insert(User u) { String sql = "insert into test.user(name,pwd) values(?,?)"; Object[] args = {u.getName(),u.getPwd()}; return jt.update(sql,args)>0; } public User queryByNamePwd(String name, String pwd) { String sql = "select name,pwd from test.user where name=? and pwd=?"; Object[] args = {name,pwd}; return jt.queryForObject(sql, args, new RowMapper<User>() { public User mapRow(ResultSet rs, int arg1) throws SQLException { User u = new User(); u.setName(rs.getString("name")); u.setPwd(rs.getString("pwd")); return u;}}); } }
时间: 2024-02-26 19:56:18 浏览: 90
这是一个使用Spring框架和JdbcTemplate实现的UserDao接口的实现类。其中,insert方法用于向数据库中插入用户信息;queryByNamePwd方法用于通过用户名和密码查询用户信息。该类使用了自动注入(@Autowired)的方式注入了JdbcTemplate对象,用于执行SQL语句。另外,使用了匿名内部类的方式实现了RowMapper接口,用于将查询结果映射成User对象。
相关问题
package com.qst.service; import com.qst.Dao.UserDao; import com.qst.entity.User; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.core.RowMapper; import org.springframework.stereotype.Component; import java.sql.ResultSet; import java.sql.SQLException; @Component public class UserServiceImpl implements UserService { @Autowired private UserDao dao; public boolean register(User u) { return dao.insert(u); } public User queryByNamePwd(String name, String pwd) { return dao.queryByNamePwd(name, pwd); } }
这是一个使用Spring框架和JdbcTemplate实现的UserService接口的实现类。其中,register方法调用了UserDao的insert方法向数据库中插入用户信息,queryByNamePwd方法调用了UserDao的queryByNamePwd方法通过用户名和密码查询用户信息。该类使用了自动注入(@Autowired)的方式注入了UserDao对象。
package com.qst.dao.impl;
这段代码是一个Java包的声明语句,它声明了一个名为com.qst.dao.impl的包。在Java中,包是一种组织类的机制,可以将相关的类放在同一个包中,方便管理和使用。在声明包的时候,包名应该符合命名规范,通常使用反转的域名来命名,以避免包名冲突。在声明包之后,所有在该包下的Java类文件都需要在文件的第一行使用package语句指定所属的包。
阅读全文