开发基于Mysql+Servlet+JSP的作业管理系统(二)

开发基于Mysql+Servlet+JSP的作业管理系统(二)

一、将IDEA项目改造为maven工程

1.为什么要将IDEA项目改造为maven工程?

在大型项目开发过程中,经常会出现如下问题
(1)项目代码版本管理混乱,出现的问题难以定位。为问题的排查和解决增加了很大的难度;
(2)对于部分地市,其 jar 包过大。因为部分地市的特殊性,需要一些独特的 jar 包。为了保证程序正常运行,需要导入相关 jar 包,导致jar包达到100-200M,严重影响使用和效率;
(3)项目过于复杂,层次结构不够清晰,不利于新加入的开发人员理解项目代码。

2.将IDEA项目改造为maven工程步骤

(1)项目右键 → Add Framework Support…1
(2)选择Maven
2
(3)如图:
maven
(4)修改pom.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>cn.Only.Homework_System</groupId>
    <artifactId>Homework_System</artifactId>
    <version>1.0-SNAPSHOT</version>
    
    <packaging>war</packaging>
</project>

groupiId如何填写?
分为三段
第一段:域。eg: cn(china),org(非营利组织),com(商业组织)
第二段:组织。eg: 美团公司为 meituan;个人的小项目为 Only
第三段:子项目。项目的名字

(5)指定src/main/java为资源目录,该文件夹变蓝:
指定
(6)按照maven的目录模式,将 web 文件夹移至src/main目录下,并将 web 改名为webapp:
移动
Rename
webapp
(7)完善pom.xml,在pom.xml文件中加入如下语句(根据本地java版本更改):

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.encoding>UTF-8</maven.compiler.encoding>
    <java.version>1.8</java.version>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
</properties>

(8)修改如下配置,改为与本地 jdk 匹配的版本:
1
2
3
(8)运行成功,即为maven工程改造成功。

二、优化数据库连接

1.原数据库连接潜在问题

原数据库连接与断开存在于StudentJdbc.class与TeacherJdbc.class中的每一个函数中(共11个),将会导致①代码冗余 ②若改变数据库 url 将要修改多次等问题,不利于项目开发。

2.优化数据库连接的方法

①在Jdbc.package中添加JdbcUtil.class(即JDBC工具类),在此class中编写连接数据库和断开数据库的函数,方便其他函数直接调用。

package Jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class JdbcUtil {
    public static final String DRIVER = "com.mysql.cj.jdbc.Driver";
    public static final String URL = "jdbc:mysql://localhost:3306/mysql_database?serverTimezone=UTC";
    public static final String USER = "root";
    public static final String PASSWORD = "123456";
    public static Connection conn = null;
    public static PreparedStatement stmt = null;

    public void Connect() {
        try {
            Class.forName(DRIVER);
            conn = DriverManager.getConnection(URL,USER,PASSWORD);
        } catch(SQLException se) {
            se.printStackTrace();
        } catch(Exception e) {
            e.printStackTrace();
        }
    }

    public void Close() {
        try {
            if(stmt!=null) stmt.close();
        } catch(SQLException se2){ }

        try {
            if(conn!=null) conn.close();
        } catch(SQLException se) {
            se.printStackTrace();
        }
    }
}

②在其他class中的函数调用Connect()及Close()函数的方法:
在其他类引用变量:

JdbcUtil jdbc_util = new JdbcUtil();

调用函数:

//连接数据库
jdbc_util.Connect();
//断开数据库
jdbc_util.Close();

三、相关文章

1.开发基于Mysql+Servlet+JSP的作业管理系统(一)

有关该作业管理系统使用方法与界面展示,数据库、数据层、界面与其跳转设计架构以及源码简单介绍的上一篇博文:
开发基于Mysql+Servlet+JSP的作业管理系统(一)

2.关于maven的学习文章

(1)maven的使用和爬过的坑 作者: new个对象先
(2)使用idea将普通项目转换为maven项目(超详细) 作者: new个对象先

四、下一篇

开发基于Mysql+Servlet+JSP的作业管理系统(三)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值