• ADADADADAD

    Spring 注入Bean时为null[ mysql数据库 ]

    mysql数据库 时间:2024-12-24 19:10:58

    作者:文/会员上传

    简介:

    Spring.xml<util:properties id="db" location="classpath:jdbc.properties"/><context:component-scan base-package="com.xms" /><mvc:annotation-driven /><!-- 声明Data

    以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。

    Spring.xml

    <util:properties id="db" location="classpath:jdbc.properties"/>

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

    <mvc:annotation-driven />

    <!-- 声明DataSource -->

    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">

    <property name="driverClassName" value="#{db.driver}" />

    <property name="url" value="#{db.url}" />

    <property name="username" value="#{db.user}"/>

    <property name="password" value="#{db.password}"/>

    </bean>

    <!-- 导入SpringJDBC -->

    <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">

    <!-- 引入数据源 -->

    <!--

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

    -->

    <constructor-arg>

    <ref bean="dataSource"/>

    </constructor-arg>

    </bean>

    <!-- 实例化dao和service接口 -->

    <bean id="loginDao" class="com.xms.dao.LoginDaoImpl">

    <!-- 注入Spring的jdbcTemplate -->

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

    </bean>

    <bean id="loginService" class="com.xms.service.loginServiceImpl">

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

    </bean>

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

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

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

    </bean>

    jdbc.properties

    driver=com.mysql.jdbc.Driver

    url=jdbc:mysql://127.0.0.1:3306/xmscode?useUnicode=true&characterEncoding=utf8

    user=root

    password=1234

    controller:

    @Controller

    @RequestMapping("login")

    public class LoginController {

    private LoginService loginService;

    public LoginService getLoginService() {

    return loginService;

    }

    public void setLoginService(LoginService loginService) {

    this.loginService = loginService;

    }

    @RequestMapping("tologin")

    public String toLogin(){

    return "login";

    }

    @RequestMapping("login")

    public String login(User user, HttpServletRequest request) throws Exception{

    //该行报错 loginService为null

    User u = loginService.checkInfo(user);

    HttpSession session = request.getSession();

    session.setAttribute("nickname", u.getNickname());

    return "index";

    }

    }

    dao接口:

    public interface LoginDao {

    //根据email查找User

    public User findUserByEmail(User user) throws Exception;

    }

    daoImpl:

    @Repository

    public class LoginDaoImpl implements LoginDao {

    private JdbcTemplate jdbcTemplate;

    public JdbcTemplate getJdbcTemplate() {

    return jdbcTemplate;

    }

    public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {

    this.jdbcTemplate = jdbcTemplate;

    }

    public User findUserByEmail(User user) throws Exception {

    User u = null;

    String sql = "select * from xc_user where email=?";

    Object[] params = new Object[]{user.getEmail()};

    u = jdbcTemplate.queryForObject(sql, (RowMapper<User>) new User(), params);

    return u;

    }

    }

    service接口:

    @Service

    public interface LoginService {

    public User checkInfo(User user) throws Exception;

    }

    service实现类:

    @Service

    public class loginServiceImpl implements LoginService{

    private LoginDao loginDao;

    public LoginDao getLoginDao() {

    return loginDao;

    }

    public void setLoginDao(LoginDao loginDao) {

    this.loginDao = loginDao;

    }

    public User checkInfo(User user) throws Exception{

    System.out.println("loginDao"+loginDao);

    User u = null;

    u = loginDao.findUserByEmail(user);

    if(u==null){

    //用户名错误

    throw new EmailErrorException("用户名错误");

    }else if(!u.getPassword().equals(user.getPassword())){

    //密码错误

    throw new PasswordErrorException("密码错误");

    }else{

    //用户名和密码正确

    return u;

    }

    }

    }

    Spring 注入Bean时为null.docx

    将本文的Word文档下载到电脑

    推荐度:

    下载
    热门标签: bean时为Spring