四、Spring与Dao练手小案例

1.分析

  • 代码分为三层,分别为dao、service和test(测试用,暂时不涉及web)。
  • 每个类拥有自己的接口和实现类。

2.Dao

  • 包名是com.itlike.dao
  • UserDao(接口)
package com.itlike.dao;
public interface UserDao {
    public void delete();
}
  • UserDaoImpl(实现类)
package com.itlike.dao;
import org.springframework.stereotype.Repository;
@Repository("userDao")
public class UserDaoImpl implements UserDao{
    @Override
    public void delete(){
        System.out.println("从数据库当中删除记录");
    }
}

3.Service

  • 包名是com.itlike.service
  • UserService(接口)
package com.itlike.service;
public interface UserService {
    public void delete();
}
  • UserServiceImpl(实现类)
package com.itlike.service;
import com.itlike.dao.UserDao;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@Service("userService")
public class UserServiceImpl implements UserService {
    @Resource(name="userDao")
    private UserDao userDao;

    @Override
    public void delete() {
        userDao.delete();
    }
}

4.Test

  • 包名是com.itlike.test
  • UserTest
package com.itlike.test;

import com.itlike.service.UserService;
import com.itlike.service.UserServiceImpl;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class UserTest {
    @Test
    public void test(){
        ApplicationContext app = new ClassPathXmlApplicationContext("applicationContext.xml");
        UserService user =(UserServiceImpl) app.getBean("userService");
        user.delete(); //从数据库当中删除记录
    }
}

输出:从数据库当中删除记录

5.相关配置文件

  • applicationContext.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"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context.xsd">
    <context:component-scan base-package="com.itlike"/>
</beans>
  • log4j.properties
# Define the root logger with appender file
log4j.rootLogger = DEBUG, FILE

# Define the file appender
log4j.appender.FILE=org.apache.log4j.FileAppender
# Set the name of the file
log4j.appender.FILE.File=D://mylog.log

# Set the immediate flush to true (default)
log4j.appender.FILE.ImmediateFlush=true

# Set the threshold to debug mode
log4j.appender.FILE.Threshold=debug

# Set the append to false, overwrite
log4j.appender.FILE.Append=false

# Define the layout for file appender
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.conversionPattern=%m%n

猜你喜欢

转载自blog.csdn.net/A15815635741/article/details/84329612
今日推荐