java写一个接口_JAVA写接口傻瓜($)教程(三)

本文介绍了如何在Java中进行数据库连接,通过示例代码展示了使用JDBC连接SQL Server数据库并执行查询操作的过程。同时,文章还讲解了如何利用Fastjson库将查询结果转化为JSON数据,强调了Fastjson在数据交互中的重要性,并给出了一个简单的Student类作为示例。
摘要由CSDN通过智能技术生成

接上一篇

补充:事实上java的类需要在src文件夹里写,classes文件夹只是会同步src文件夹里的类。如果在classes文件夹里操作java类,是会提示文件只读的。src文件夹中进行代码编写

2fa9c0a4f6b2a346d5e4cc7d750a0c57.png

5、数据库连接代码

到第三篇终于到了写代码的时间了呜呜...我选择写调试数据库的代码,直接写sevlert的话debug比较麻烦,先写数据库部分就能有效避免数据库出错了。下面是代码,注释很详细了

//

// Source code recreated from a .class file by IntelliJ IDEA

// (powered by Fernflower decompiler)

//

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import java.util.ArrayList;

public class jdbc{

public jdbc () {

}

public static void main(String[] args) {

String dbURL = "jdbc:sqlserver://127.0.0.1:1433;DatabaseName=S-T";//JDBC的本机地址,DatabaseName注意改成对应数据库的名字

String userName = "sa";

String userPwd = "111";//SQD sever验证的用户名和密码

Connection dbConn = null;//连接的实体

String sql = "select * from Student";

try {

dbConn = DriverManager.getConnection(dbURL, userName, userPwd);

Statement statement = dbConn.createStatement();

ResultSet resultSet = statement.executeQuery(sql);//执行SQL语句,用于产生单个结果集

System.out.println(resultSet);//返回值不为-11或空就证明SQL语句执行成功

} catch (SQLException var18) {

var18.printStackTrace();

} finally {

try {

if (dbConn != null) {//结束时关闭连接

dbConn.close();

dbConn = null;

}

} catch (Exception var17) {

}

}

}

}

6、使用fastjson将查询出的结果生成json数据

在日志解析,前后端数据传输交互中,经常会遇到字符串(String)与json,XML等格式相互转换与解析,其中json以跨语言,跨前后端的优点在开发中被频繁使用,基本上可以说是标准的数据交换格式。fastjson是一个java语言编写的高性能且功能完善的JSON库,它采用一种“假定有序快速匹配”的算法,把JSON Parse 的性能提升到了极致。它的接口简单易用,已经被广泛使用在缓存序列化,协议交互,Web输出等各种应用场景中。

如果简介看不懂也没关系,我们只需知道,fastjson使用前需要有一个类说明它要转化的对象的样式。这个类需要有空构造函数、一般构造函数,每一个属性都需要有对应的get、set方法。下面是一个学生类

public class student {

String name;

String id;

String sex;

String age;

public student(){

}

public student(String name,String id,String sex,String age){

this.age=age;

this.name=name;

this.id=id;

this.age=age;

}

public void setName(String name){

this.name=name;

}

public void setId(String id){

this.id=id;

}

public void setSex(String sex){

this.sex=sex;

}

public void setAge(String age){

this.age=age;

}

public String getName(){

return name;

}

public String getId(){

return id;

}

public String getSex(){

return sex;

}

public String getAge(){

return age;

}

}

import com.alibaba.fastjson.JSONObject;

import java.sql.*;

import java.util.ArrayList;

import java.util.List;

//这是查询后显示的代码,详情看注释

public class connect {

public static void main(String[] args) {

String dbURL="jdbc:sqlserver://127.0.0.1:1433;DatabaseName=S-T";

String userName="sa";

String userPwd="111";

Connection dbConn = null;

String sql="select * from Student";//同连接数库的含义

List students=new ArrayList<>();//开一个list来保存学生信息

try {

//response.setContentType("text/html");

dbConn= DriverManager.getConnection(dbURL,userName,userPwd);

Statement statement=dbConn.createStatement();

ResultSet resultSet=statement.executeQuery(sql);

while (resultSet.next()){//每查询到一条记录

student st=new student();//存储一个新对象

st.setName(resultSet.getString("Sname"));//注意观察,set方法是针对student类的,getString里对应的是数据库中的列明

st.setId(resultSet.getString("Sno"));

st.setSex(resultSet.getString("Ssex"));

st.setAge(resultSet.getString("Sage"));

students.add(st);//加入list

}

System.out.println(JSONObject.toJSONString(students));//转变为json对象

} catch (SQLException e) {

e.printStackTrace();

}

finally {

try

{//关闭连接

if(dbConn!=null)

{

dbConn.close();

dbConn=null;

}

}

catch(Exception ex)

{

}

}

}

}

查询结果,可以看出是json格式

9ffc62e89a4bce19a8065042561c5eae.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值