IntelliJIDEA+JFormDesigner+MSSQLSERVER实战2、建⽴
w。。。
IntelliJ IDEA+JFormDesigner+MSSQLSERVER 实战2、建⽴windows form 应⽤和JDBC封装和数据访问。
⾸先在IntelliJ IDEA⽣成新的项⽬form,在项⽬的src下点添加new->java class  JDBC封装和数据访问 的新类JdbcUtils.java
类JdbcUtils 代码如下:
package jdbcutils;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
//import flect.Field;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
//import java.sql.ResultSetMetaData;
import java.sql.SQLException;
//import java.util.ArrayList;
//import java.util.HashMap;
import java.util.List;
//import java.util.Map;
// import java.utiljdbcutils .Map;
import java.util.Properties;
public class JdbcUtils
{
// 表⽰定义数据库的⽤户名
private final String USERNAME = "sa";
/
/ 定义数据库的密码
private final String PASSWORD = "3201319";
// 定义数据库的驱动信息
private final String DRIVER = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
// 定义访问数据库的地址
private final String URL = "jdbc:sqlserver://localhost:1433;DatabaseName=bhjs";
// 定义数据库的链接
private Connection connection;
// 定义sql语句的执⾏对象
private PreparedStatement pstmt;
// 定义查询返回的结果集合
private ResultSet resultSet;
public void JdbcUtils()
{
try
{
Class.forName(DRIVER);
// System.out.println("注册驱动成功!!");
}
catch (Exception e)
{
// TODO: handle exception
}
}
// 定义获得数据库的链接
public Connection getConnection()
{
try
{
connection = Connection(URL, USERNAME, PASSWORD);
// System.out.println("数据库连接成功");
}
catch (Exception e)
{intellijidea
// TODO: handle exception
}
return connection;
}
public ResultSet  findMoreResult(String sql, List params) throws SQLException  //查询返回多⾏值    {
int index = 1;
ResultSet resultSet;
pstmt = connection.prepareStatement(sql);
if (params != null && !params.isEmpty())
{
for (int i = 0; i < params.size(); i++)
{
pstmt.setObject(index++, (i));
}
}
resultSet = uteQuery();
return resultSet;
}
public boolean updateByPreparedStatement(String sql, List params) throws SQLException  //更新
{
boolean flag = false;
int result = -1;// 表⽰当⽤户执⾏添加删除和修改的时候所影响数据库的⾏数
pstmt = connection.prepareStatement(sql);
int index = 1;
// 填充sql语句中的占位符
if (params != null && !params.isEmpty())
{
for (int i = 0; i < params.size(); i++)
{
pstmt.setObject(index++, (i));
}
}
result = uteUpdate();
flag = result > 0 ? true : false;
return flag;
}
public void releaseConn()  //释放连接
{
if (resultSet != null)
{
try
{
resultSet.close();
}
catch (SQLException e)
{
// TODO Auto-generated catch block                e.printStackTrace();
}
}
if (pstmt != null)
{
try
{
pstmt.close();
}
catch (SQLException e)
{
// TODO Auto-generated catch block                e.printStackTrace();
}
}
if (connection != null)
{
try
{
connection.close();
}
catch (SQLException e)
{
// TODO Auto-generated catch block                e.printStackTrace();
}
}
}
}
2、建⽴新的 JFormDesigner 的窗⼝ form1
点tab form1.jfd添加新的窗⼝控件 5个按钮JButton和⼀个JTable 控件
改写 form1.java 代码如下:
package company;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;
//import java.util.ArrayList;
import java.util.List;
import java.util.Vector;
import javax.swing.table.DefaultTableModel;
import javax.swing.JTable;
import jdbcutils.JdbcUtils;
/**
* @author a
*/
public class form1 extends JFrame {
public form1() {
initComponents();
}
private void button1MouseClicked(MouseEvent e) {
// TODO add your code here
///
Connection con1 = null;
PreparedStatement statement = null;
ResultSet res = null;
List parm1=null;
try {
JdbcUtils JdbcUtils2 =new JdbcUtils();
JdbcUtils2.JdbcUtils();
Connection();
String sql = "select * from info_jqmc ";//查询test表
res=JdbcUtils2.findMoreResult(sql,parm1);  //调⽤jdbc封装类中查询函数
Vector line1;
Vector rows,columnNames;
rows = new Vector();
columnNames = new Vector();
columnNames.add("jqmc");
columnNames.add("jqip");
()){
line1 = new Vector();
line1.String("jqmc"));
line1.String("jqip"));
// label1.String("jqmc"));
rows.add(line1);
}
//定义JTable的对象
DefaultTableModel  model = new DefaultTableModel(rows, columnNames);            table1.setModel( model);
//table1.updateUI() ;
// scrollPane1.validate();
//  table1.invalidate();
//table.addMouseListener(new MouseAdapter() {
//  @Override
//    public void mouseClicked(MouseEvent e) {
//        int SelectedRows().length;// 取得⽤户所选⾏的⾏数
//        DefaultTableModel tableModel = (DefaultTableModel) Model();
//        int selectedRowIndex = SelectedRow(); // 取得⽤户所选单⾏
//        textField.setText((ValueAt(selectedRowIndex,0));
//        textField_1.setText((ValueAt(selectedRowIndex,1));
// 进⾏相关处理
/
/  }

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。