转:

JAVA学生宿舍管理系统

需要的工具
1.SQL Server
2.Eclipse
3.JDBC连接数据库驱动
https://download.microsoft.com/download/A/F/B/AFB381FF-7037-46CE-AF9B-6B1875EA81D7/sqljdbc_6.0.8112.200_chs.exe

功能实现
分为三大类
1.land.java (登陆界面)
2.system.java (系统管理界面)
3.sql.java (数据库操作,包括连接、断开、增删改查等操作)

一、登陆界面及代码

部分代码:

登陆按钮事件

public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if((JButton)e.getSource()== buttonLand)
{ String name = textName.getText().trim();
String password = String.valueOf(textPassword.getPassword()).trim();
int num = sq.landing(name, password);
if(num==1)
{
JOptionPane.showMessageDialog(frame, "欢迎进入学生宿舍管理系统!","提示:",JOptionPane.PLAIN_MESSAGE);
system system = new system();
frame.dispose();
}
else
{
JOptionPane.showMessageDialog(frame, "账号或者密码错误!","提示:",JOptionPane.ERROR_MESSAGE);
}
}
}

二、系统管理界面及代码**(这里只添加了俩个表,多少表都是一样的道理**)

增加数据:点击增加按钮会出现一空白行,填写完点击保存即可
保存(更新)数据:直接在表中进行相应的操作,再点击保存即可
删除数据:选择某行,点击删除按钮即可


部分代码:

//--------------------------------------按钮事件--------------------------------
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
//------------------------------- 删除-----------------------------
String tableName = null;
String key1 = null;
if((JButton)e.getSource()==buttonDelete)
{ if(paneParent.getSelectedIndex()==1)
{
tableName = "学生信息表";
key1 = "sno";
}
if(paneParent.getSelectedIndex()==2)
{
tableName = "宿舍信息表";
key1 = "dno";
}
int row = table.getSelectedRow();
if(row!=-1)
{
String key2 = (String) tableModel.getValueAt(row, 0);
int result = JOptionPane.showConfirmDialog(null, "确定要删除吗?","请确认",JOptionPane.YES_NO_OPTION);
if(result==JOptionPane.OK_OPTION)
{
String sql = "delete from "+tableName+" where "+key1+"="+key2;
int num = sq.delete(sql);
if(num>0)
{
tableModel.removeRow(row);
}
}
}
else
{
JOptionPane.showMessageDialog(null, "请选择要删除的行!","提示:",JOptionPane.ERROR_MESSAGE);
}
}
//------------------------------保存------------------------
if((JButton)e.getSource()==buttonSave)
{
int result = JOptionPane.showConfirmDialog(null, "请确认数值已经更改,否则保存无效","请确认",JOptionPane.YES_NO_OPTION);
if(result==JOptionPane.OK_OPTION)
{
int row = table.getRowCount();
int column = table.getColumnCount();
String[][]valueRow= new String[row][column];
String[] sqlvalue = new String[row];
for(int i = 0; i < row; i++)
{
for(int j = 0; j < column; j++)
{
valueRow[i][j] = table.getValueAt(i, j).toString();
}
}
if(paneParent.getSelectedIndex()==1)
{
for(int i =0;i());
}
}

三、sql.java (重要)

public class SQL {
public Connection conn;
public Statement st;
public ResultSet rs; //----------------------------获取链接--------------------------------
public Connection getConn() throws SQLException, ClassNotFoundException
{
String driverClassName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
String url = "jdbc:sqlserver://localhost:1433;databaseName=学习宿舍";
//:1433为数据库默认端口号,学习宿舍为数据库名字
String user = "sa"; //登录用户名
String password = "123456"; //登录密码
try {
Class.forName(driverClassName);
conn = DriverManager.getConnection(url, user, password);
System.out.println("数据库连接成功");
} catch (SQLException ex1)
{
System.out.println("数据库连接失败");
}
return conn;
} //-----------------------------------关闭链接---------------------------------- public void Close()
{
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
st.close();
} catch (SQLException e1) {
e1.printStackTrace();
}
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
//----------------------------------------登陆---------------------------------
public int landing(String name1,String password1)
{
int num = 0;
String sql = "select *from 用户表";
try{
getConn();
st = conn.createStatement();
rs = st.executeQuery(sql);
while(rs.next())
{
String name = rs.getString(1).trim();
String password = rs.getString(2).trim();
if(name.equals(name1)&&password.equals(password1))
{
num = 1;
} }
}catch (SQLException e) {
// TODO: handle exception
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Close();
return num;
}
//--------------------------------查询-------------------------------
public Vector> query(String tableName,int column)
{
int num = 0;
String sql = "select *from "+tableName;
Vector> data = new Vector>();
try{
getConn();
st = conn.createStatement();
rs=st.executeQuery(sql);
while(rs.next())
{
Vector

JAVA学生宿舍管理系统的更多相关文章

  1. java学生成绩管理系统

                                                       信1805-1 20183590 田庆辉             石家庄铁道大学 2019 年秋季 ...

  2. java学生简单管理系统

    1 //设一个班有n名学生,期末考试5门,编写程序评定学生奖学金 2 514 //要求打印输出一二等奖学金学生的学号,姓名和各科成绩 3 515 //总成绩超过全班总平均成绩20%一等奖学金,超过总平 ...

  3. java开发学生宿舍管理系统源码

    开发环境: Windows操作系统开发工具: Eclipse+Jdk+Tomcat+MySQL 运行效果图

  4. Java课设(学生信息管理系统)

    1.团队课程设计博客链接 http://www.cnblogs.com/Min21/p/7064093.html 2.个人负责模板或任务说明 设计登陆界面和学生信息界面的设计,学生信息的显示.退出等功 ...

  5. Java项目:学生成绩管理系统(二)

    学生成绩管理系统(二):项目介绍 一.设计要求: 1.1 简单的图形界面登录功能. 1.2 对数据库的的信息的查询功能. 1.3 对数据库的的信息的修改功能. 1.4 对数据库的的信息的删除功能. 1 ...

  6. Java 实现学生信息管理系统

    编写一个简单的学生管理信息系统. 在oracle中设计一张学生表,以学号作为关键字. 其他学生信息有:姓名.手机号. 在进入系统时,显示如下菜单: ************************** ...

  7. Java学生管理系统项目案例

    这是一个不错的Java学生管理系统项目案例,希望能够帮到大家的学习吧. 分代码如下 package com.student.util; import java.sql.Connection; impo ...

  8. 学生成绩管理系统 1.0(Java+MySql)

    真难…… 数据库建立不会,中文编码不会,插入数据不会,删除不会…… Java读入数据不会……数据库连接不会…… 你也好意思说自己是学计算机的啊魂淡…… 我会慢慢写2.0,3.0版的……噗…… src/ ...

  9. Android(java)学习笔记195:学生信息管理系统案例(SQLite + ListView)

    1.首先说明一个知识点,通常我们显示布局文件xml都是如下: setContentView(R.layout.activity_main): 其实每一个xml布局文件就好像一个气球,我们可以使用Vie ...

随机推荐

  1. 树链剖分(附带LCA和换根)——基于dfs序的树上优化

    .... 有点懒: 需要先理解几个概念: 1. LCA 2. 线段树(熟练,要不代码能调一天) 3. 图论的基本知识(dfs序的性质) 这大概就好了: 定义: 1.重儿子:一个点所连点树size最大的 ...

  2. poj3087 Shuffle'm Up

    Description A common pastime for poker players at a poker table is to shuffle stacks of chips. Shuff ...

  3. hdu5391 Zball in Tina Town

    Problem Description Tina Town is a friendly place. People there care about each other. Tina has a ba ...

  4. 自动化将 word 转为 pdf,再将pdf转为图片!

    参考: https://blog.csdn.net/ynyn2013/article/details/49120731 https://www.jianshu.com/p/f57cc64b9f5e 一 ...

  5. 抓包 127.0.0.1 (loopback) 使用 tcpdump+wireshark

    直接使用 wireshark无法抓取 127.0.0.1环回的数据包,一种解决方法是先传到路由器再返回,但这样可能造成拥塞. Linux 先使用tcpdump抓包并输出为二进制文件,然后wiresha ...

  6. play games for learning web skills

    play games for learning web skills CSS flexbox https://codepip.com/games/flexbox-froggy/ CSS grid ht ...

  7. How to enable HTTPS for local development in macOS using Chrome

    How to enable HTTPS for local development in macOS using Chrome HTTPS, macOS, Chrome local HTTPS htt ...

  8. docs search & algolia & docsearch

    docs search & algolia & docsearch https://www.algolia.com/docsearch https://www.algolia.com/ ...

  9. Web 安全 & 反爬虫原理

    Web 安全 & 反爬虫原理 数据加密/解密 HTTPS ip 封锁 请求限制 爬虫识别,canvas 指纹 refs https://segmentfault.com/a/119000001 ...

  10. taro demos & taro 组件库

    taro demos & taro 组件库 ui demo https://github.com/qit-team/taro-yanxuan https://github.com/fengch ...