javaweb JDBC练习

环境准备

创建对应的类,并设置get 跟set方法

在java创建数据库的表对应的类时,一个一个输入会很麻烦 

直接将数据库语句全部复制到类中 ,将 --  全都替换成//

alt + 鼠标左键 :可以进行整列编辑  可以选中所有字段后面的内容按分号换成分号,再第一列加上private String  ,个别为int的再个别修改就可以了

在实体类中,基本数据类型建议使用其对应的包装类型

private Integer id;//品牌id
private String brandName;//品牌名字
private String companyName;//公司名字
private Integer ordered ;//排序字段
private String description; //描述信息
private Integer status; //状态:0禁用 1启用

Integer 默认为null 就不会像int 默认为0 影响数据初始化的状态

查询

1.SQL怎么写 ?    select * from db_brand

2.参数要不要写?  不用

3.需要什么结果? 得到品牌集合list

4.记得释放资源

//加载配置文件
Properties prop =new Properties();
prop.load(new FileInputStream("D:\\Develop1\\jdbc-demo\\src\\druid.properties"));
//获取连接池对象
DataSource dataSource= DruidDataSourceFactory.createDataSource(prop);
//获取数据库连接 Connection
Connection conn =dataSource.getConnection();
//定义SQL
String sql ="select * from tb_brand";
//获取pstmt 对象
PreparedStatement pstmt =conn.prepareStatement(sql);
//设置参数
//执行SQL
ResultSet rs = pstmt.executeQuery();
List<Brand> list =new ArrayList<>();
//处理结果
while (rs.next()){
    int id = rs.getInt("id");
    String brandName = rs.getString("brand_name");
    String companyName = rs.getString("company_name");
    int ordered = rs.getInt("ordered");
    String description = rs.getString("description");
    int status = rs.getInt("status");
    Brand brand =new Brand(id,brandName,companyName,ordered,description,status);
    list.add(brand);

}
System.out.println(list);
//释放资源
rs.close();
pstmt.close();
conn.close();

添加

sql 语句:

String sql ="insert into tb_brand(brand_name,company_name,ordered,description,status) values(?,?,?,?,?)";

是否需要参数? 需要:除了id以外的所有数据

返回结果?  boolean 

//接收页面提交的参数
String brandName="香飘飘";
String companyName="香飘飘";
int ordered =1;
String description="绕地球一圈";
int status =1;

//加载配置文件
Properties prop =new Properties();
prop.load(new FileInputStream("jdbc-demo\\src\\druid.properties"));
//获取连接池对象
DataSource dataSource= DruidDataSourceFactory.createDataSource(prop);
//获取数据库连接 Connection
Connection conn =dataSource.getConnection();
//定义SQL
String sql ="insert into tb_brand(brand_name,company_name,ordered,description,status) values(?,?,?,?,?)";
//获取pstmt 对象
PreparedStatement pstmt =conn.prepareStatement(sql);

//设置参数
pstmt.setString(1,brandName);
pstmt.setString(2,companyName);
pstmt.setInt(3,ordered);
pstmt.setString(4,description);
pstmt.setInt(5,status);

//执行SQL
int count = pstmt.executeUpdate();
System.out.println(count==0 ? "添加失败":"添加成功");
//处理结果
//释放资源
pstmt.close();
conn.close();

修改:根据id修改

sql:

String sql ="update tb_brand set " +
        "brand_name=? ,company_name=?,ordered=?,description=?,status=? where id=?";

其他都跟添加一样

删除:根据id删除

sql:

delete from tb_brand where id = ?;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值