毕业设计 - 基于JSP的企业快信系统的设计与实现 【源码+论文】
文章目录
- 前言
- 一、项目设计
- 模块设计
- 实现效果
- 二、部分源码
- 项目源码
前言
今天学长向大家分享一个 java web 设计项目:
JSP企业快信系统的设计与实现
一、项目设计
1. 模块设计
根据企业快信的特点,可以将其分为名片夹管理、信息库管理、短信群发、邮件群发、系统参数设置、系统设置6个部分,其中各个部分及其包括的具体功能模块如图所示。
2. 实现效果
功能太多,学长这里就不一 一展示了
二、部分源码
源码非常多,文章篇幅有限,这里就不放上来了,仅展示小部分关键代码,有需要的同学到文章末尾链接获取源码
部分代码示例:
(1)定义ConnDB类
定义用于进行数据库连接及操作的类ConnDB,并将其保存到com.wgh.core包中,同时定义该类中所需的全局变量及构造方法。代码如下:
public class ConnDB {
public Connection conn = null; // 声明Connection对象的实例
public Statement stmt = null; // 声明Statement对象的实例
public ResultSet rs = null; // 声明ResultSet对象的实例
private static String propFileName = "/com/connDB.properties"; // 指定资源文件保存的位置
private static Properties prop = new Properties(); // 创建并实例化Properties对象实例
private static String dbClassName = " ";//定义保存数据库驱动的变量
private static String dbUrl = " ";
private static String dbUser = "sa";
private static String dbPwd = "";
public ConnDB() {
//定义构造方法
try {
//捕捉异常
//将Properties文件读取到InputStream对象中
InputStream in = getClass().getResourceAsStream(propFileName);
prop.load(in); // 通过输入流对象加载Properties文件
dbClassName = prop.getProperty("DB_CLASS_NAME");//获取数据库驱动
dbUrl = prop.getProperty("DB_URL", dbUrl); //获取URL
dbUser = prop.getProperty("DB_USER", dbUser); //获取登录用户
dbPwd = prop.getProperty("DB_PWD", dbPwd); //获取密码
} catch (Exception e) {
e.printStackTrace(); // 输出异常信息
}
}
}
(2)将数据保存到资源文件中
为了方便程序移植,将数据库连接所需信息保存到properties文件中,并将该文件保存在com包中。connDB.properties文件的内容如下:
DB_CLASS_NAME=com.mysql.jdbc.Driver
DB_URL=jdbc:mysql://127.0.0.1:3306/db_expressLetter
DB_USER=sa
DB_PWD=
(3)创建数据库连接
创建连接数据库的方法getConnection(),该方法返回connection对象的一个实例。getConnection()方法的实现代码如下:
public static Connection getConnection() {
Connection conn = null;
try {
Class.forName(dbClassName).newInstance();
conn = DriverManager.getConnection(dbUrl, dbUser, dbPwd);
} catch (Exception ee) {
ee.printStackTrace();
}
if (conn == null) {
System.err.println("警告: DbConnectionManager.getConnection() 获得数据库链接失败.\r\n\r\n链接类型:"+ dbClassName+ "\r\n链接位置:" + dbUrl+ "\r\n用户/密码"+ dbUser + "/" + dbPwd);
}
return conn;
}
(4)创建查询方法
创建执行查询语句的方法exccuteQuery(),返回值为Resultset结果集。executeQuery()方法的代码如下:
public ResultSet executeQuery(String sql) {
try {
// 捕捉异常
conn = getConnection(); // 调用getConnection()方法构造Connection对象的一个实例conn
stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
rs = stmt.executeQuery(sql);
} catch (SQLException ex) {
System.err.println(ex.getMessage()); // 输出异常信息
}
return rs; // 返回结果集对象
}
(5)创建更新操作方法
创建执行更新操作的方法executeUpdate(),返回值为int型的整数,代表更新的行数。executeUpdate()方法的代码如下:
public int executeUpdate(String sql) {
int result = 0; // 定义保存返回值的变量
try {
// 捕捉异常
conn = getConnection(); // 调用getConnection()方法构造Connection对象的一个实例conn
stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
result = stmt.executeUpdate(sql); // 执行更新操作
} catch (SQLException ex) {
result = 0; // 将保存返回值的变量赋值为0
}
return result; // 返回保存返回值的变量
}
(6)关闭数据库连接
创建关闭数据库连接的方法close()。close()方法的代码如下:
public void close() {
try {
// 捕捉异常
if (rs != null) {
// 当ResultSet对象的实例rs不为空时
rs.close(); // 关闭ResultSet对象
}
if (stmt != null) {
// 当Statement对象的实例stmt不为空时
stmt.close(); // 关闭Statement对象
}
if (conn != null) {
// 当Connection对象的实例conn不为空时
conn.close(); // 关闭Connection对象
}
} catch (Exception e) {
e.printStackTrace(System.err); // 输出异常信息
}
}
还没有评论,来说两句吧...