javaweb 项目初始配置的方法步骤

项目初始流程:

首先说一下pom.xml文件的依赖:

 

    
    
      junit
      junit
      4.12
      test
    

    
    
      javax.servlet
      javax.servlet-api
      4.0.1
      provided
    

    
    
      org.slf4j
      slf4j-log4j12
      1.7.2
    
    
      org.slf4j
      slf4j-api
      1.7.2
    

    
    
      mysql
      mysql-connector-java
      8.0.19
    

    
    
      com.alibaba
      fastjson
      1.2.62
    

    
    
      cn.hutool
      hutool-all
      5.4.7
    

    
    
      commons-io
      commons-io
      2.4
    

    
    
      commons-fileupload
      commons-fileupload
      1.3.1
    

    
    
      javax.servlet
      jstl
      1.2
    

    
    
      org.projectlombok
      lombok
      1.18.12
      provided
    

  

  
    lezijie-note

    
      
      
        org.apache.maven.plugins
        maven-compiler-plugin
        2.3.2
        
          1.8
          1.8
          UTF-8
        
      

      
      
        org.apache.tomcat.maven
        tomcat7-maven-plugin
        2.1
        
          8080 
          /note 
          tomcat7 
        
      

    
  

数据库的建立于一开始的分层:

javaweb 项目初始配置的方法步骤_第1张图片

db.properties:

# 连接MYSQL数据库的配置文件 注:等号的前后不要写空格
# 驱动名
jdbcName=com.mysql.cj.jdbc.Driver
# 数据库连接 ( db_lezijie_note是数据库的名称)
dbUrl=jdbc:mysql://localhost:3306/db_lezijie_note?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8&useSSL=false
# 数据库的连接账号 (账号基本上都是root)
dbName=root
# 数据库的连接密码 (每个人的数据库密码可能不一致,需要修改)
dbPwd=root

首先创建数据库连接的工具类:DBUtil

javaweb 项目初始配置的方法步骤_第2张图片

1:得到配置文件对象:

 /**
     * 得到配置文件对象
     */
    private  static Properties properties = new Properties();

    static {
        try {
        //加载配置文件(输入流)
        InputStream in = DBUtil.class.getClassLoader().getResourceAsStream("db.properties");
        // 通过load()方法将数日六的内容加载到配置文件对象中
            properties.load(in);
            // 通过配置文件对象的getProperty()方法获取驱动名,拿到驱动名之后加载驱动
            Class.forName(properties.getProperty("jdbcName"));
        } catch (Exception e) {
            e.printStackTrace();
        }

    }

2:获取数据库连接:

  /**
     * 获取数据库连接
     * @return
     */
    public  static Connection getConnection(){
        Connection connection = null;

        try {
            //得到数据库链接的相关性息
            String dbUrl = properties.getProperty("dbUrl");
            String dbName = properties.getProperty("dbName");
            String dbPwd = properties.getProperty("dbPwd");

            connection = DriverManager.getConnection(dbUrl,dbName,dbPwd);
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }

        return  connection;

    }

3:关闭资源:

 /**
     * 关闭资源
     * @param resultSet
     * @param preparedStatement
     * @param connection
     */
    public  static  void close(ResultSet resultSet,
                               PreparedStatement preparedStatement,
                               Connection connection){
        //判断资源对象如果不为空则关闭

            try {
                if (resultSet != null) {
                    resultSet.close();
                }
                if (preparedStatement != null) {
                    preparedStatement.close();
                }
                if (connection != null) {
                    connection.close();
                }
            }catch (SQLException throwables) {
                throwables.printStackTrace();
            }

        }

DBUtil类全部代码:

package com.ftzlovedsj.util;

import java.io.IOException;
import java.io.InputStream;
import java.sql.*;
import java.util.Properties;

/**
 * @author ${范涛之}
 * @Description
 * @create 2021-11-14 19:02
 */
public class DBUtil {
    /**
     * 得到配置文件对象
     */
    private  static Properties properties = new Properties();

    static {
        try {
        //加载配置文件(输入流)
        InputStream in = DBUtil.class.getClassLoader().getResourceAsStream("db.properties");
        // 通过load()方法将数日六的内容加载到配置文件对象中
            properties.load(in);
            // 通过配置文件对象的getProperty()方法获取驱动名,拿到驱动名之后加载驱动
            Class.forName(properties.getProperty("jdbcName"));
        } catch (Exception e) {
            e.printStackTrace();
        }

    }

    /**
     * 获取数据库连接
     * @return
     */
    public  static Connection getConnection(){
        Connection connection = null;

        try {
            //得到数据库链接的相关性息
            String dbUrl = properties.getProperty("dbUrl");
            String dbName = properties.getProperty("dbName");
            String dbPwd = properties.getProperty("dbPwd");

            connection = DriverManager.getConnection(dbUrl,dbName,dbPwd);
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }

        return  connection;

    }

    /**
     * 关闭资源
     * @param resultSet
     * @param preparedStatement
     * @param connection
     */
    public  static  void close(ResultSet resultSet,
                               PreparedStatement preparedStatement,
                               Connection connection){
        //判断资源对象如果不为空则关闭

            try {
                if (resultSet != null) {
                    resultSet.close();
                }
                if (preparedStatement != null) {
                    preparedStatement.close();
                }
                if (connection != null) {
                    connection.close();
                }
            }catch (SQLException throwables) {
                throwables.printStackTrace();
            }
        }
    }

在写好连接后我们需要写一个测试类来判断数据库是否真正连接成功:

javaweb 项目初始配置的方法步骤_第3张图片

然后编写测试代码:TestDB类:

package com.ftzlovedsj;


import com.ftzlovedsj.util.DBUtil;
import org.junit.Test;

/**
 * @author ${范涛之}
 * @Description
 * @create 2021-11-14 19:30
 */
public class TestDB {

    /**
     * 单元测试方法
     *  1. 方法的返回值,建议使用void,一般没有返回值
     *  2. 参数列表,建议空参,一般是没有参数
     *  3. 方法上需要设置@Test注解
     *  4. 每个方法都能独立运行
     *
     *  判定结果:
     *      绿色:成功
     *      红色:失败
     */

    @Test
    public  void testDB(){
        System.out.println(DBUtil.getConnetion());
    }
}

这里倘若出现了报错有可能的原因是你没有在pom文件里面导入mysql连接包:

javaweb 项目初始配置的方法步骤_第4张图片

运行成功后:

javaweb 项目初始配置的方法步骤_第5张图片

使用日志:

使用日志

配置文件

在 src/main/resources 目录下,新建 log4j.properties 文件

### 设置###stdout,
log4j.rootLogger = all,D,E,stdout

### 输出信息到控制台 ###
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n

### 输出DEBUG 级别以上的日志到=D://logs/log.log ###
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = D://logs/log.log
log4j.appender.D.Append = true
log4j.appender.D.Threshold = DEBUG 
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ]  %m%n

### 输出ERROR 级别以上的日志到=E://logs/error.log ###
log4j.appender.E = org.apache.log4j.DailyRollingFileAppender
log4j.appender.E.File =E://logs/error.log
log4j.appender.E.Append = true
log4j.appender.E.Threshold = ERROR 
log4j.appender.E.layout = org.apache.log4j.PatternLayout
log4j.appender.E.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ]

使用方式

// 使用日志工厂类,记入日志 
private static Logger logger = LoggerFactory.getLogger(DBUtil.class); 
// 记录日志 
logger.info("在{}时,获取数据库连接", new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));

javaweb 项目初始配置的方法步骤_第6张图片

javaweb 项目初始配置的方法步骤_第7张图片

TestDB:

package com.ftzlovedsj;


import com.ftzlovedsj.util.DBUtil;

import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
 * @author ${范涛之}
 * @Description
 * @create 2021-11-14 19:30
 */
public class TestDB {

    // 使用日志工厂类,记录日志
    private Logger logger = LoggerFactory.getLogger(TestDB.class);

    /**
     * 单元测试方法
     *  1. 方法的返回值,建议使用void,一般没有返回值
     *  2. 参数列表,建议空参,一般是没有参数
     *  3. 方法上需要设置@Test注解
     *  4. 每个方法都能独立运行
     *
     *  判定结果:
     *      绿色:成功
     *      红色:失败
     */

    @Test
    public  void testDB(){
        System.out.println(DBUtil.getConnetion());
        //使用日志
        logger.info("获取数据库连接:" + DBUtil.getConnetion());
        logger.info("获取数据库连接:{}", DBUtil.getConnetion());
    }
}

到此这篇关于javaweb 项目初始配置的方法步骤的文章就介绍到这了,更多相关javaweb 项目初始配置内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(javaweb 项目初始配置的方法步骤)