JAVA写接口傻瓜($)教程(三)
接上一篇
补充:事实上java的类需要在src文件夹里写,classes文件夹只是会同步src文件夹里的类。如果在classes文件夹里操作java类,是会提示文件只读的。src文件夹中进行代码编写

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<student> 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格式

JAVA写接口傻瓜($)教程(三)的更多相关文章
- JAVA写接口傻瓜(?)教程(一)
当一个安卓开发人员/微信小程序开发者想做点什么的时候,如果他发现没有合适的接口,那么单机安卓.本地数据库emmm.没了接口就好像老人没了拐杖.盲人没了墨镜,完全可以称得上是举步维艰.生活艰难到需要自己 ...
- JAVA写接口傻瓜(#)教程(四)
接上篇 7.sevlert 啊啊啊终于写到最重要的实现部分了.Servlet = Service + Applet,表示小服务程序.Servlet 是在服务器上运行的小程序.这个词是在 Java ap ...
- JAVA写接口傻瓜(%)教程(五)
今天主要说一下在URL 中使用?传值的问题.在显式的使用get方法获取特点数据时,一般会通过?传递参数值,sevlert根据参数在数据库中对应的查找内容.所以,SQL语句需要拼接,要加上后面的参数.参 ...
- JAVA写接口傻瓜(!)教程(二)
接上一篇 3.数据库SQL sever配置 理论上来说,java web项目连接什么数据库都行,但是我电脑上SQL sever用了三年了,各种操作都比较熟悉,所以也懒得再用My SQL.想用My SQ ...
- java写接口
1.先导spring包 2.首先配置spring.xml的监听web.xml配置. <context-param> <param-name>contextConfigLocat ...
- 用java写bp神经网络(三)
孔子曰,吾日三省吾身.我们如果跟程序打交道,除了一日三省吾身外,还要三日一省吾代码.看代码是否可以更简洁,更易懂,更容易扩展,更通用,算法是否可以再优化,结构是否可以再往上抽象.代码在不断的重构过程中 ...
- JAVA之旅(三十五)——完结篇,终于把JAVA写完了,真感概呐!
JAVA之旅(三十五)--完结篇,终于把JAVA写完了,真感概呐! 这篇博文只是用来水经验的,写这个系列是因为我自己的java本身也不是特别好,所以重温了一下,但是手比较痒于是就写出了这三十多篇博客了 ...
- 寻找写代码感觉(三)之使用 Spring Boot 编写接口
一.前言 项目配置完之后,接着就是写接口了,那咱们就开始吧. 二.项目配置补充知识点 上篇文章写的是关于项目属性配置的一些知识,这里针对上次遗忘内容进行补充如下: 2.1.获取配置文件的值 在appl ...
- java为移动端写接口
java作为一门后端语言,其厉害之处在于web,大家比较熟知的各种网络应用,java都能做,那么在这个移动优先的时代,如何继续发挥java的强大呢.通常是让java作为一个app的服务端,为app客户 ...
随机推荐
- Git 教程(四):标签和其他
标签管理 发布一个版本时,我们通常先在版本库中打一个标签(tag),这样,就唯一确定了打标签时刻的版本.将来无论什么时候,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来.所以,标签也是版本库 ...
- laravel5.7 前后端分离开发 实现基于API请求的token认证
最近在学习前后端分离开发,发现 在laravel中实现前后台分离是无法无法使用 CSRF Token 认证的.因为 web 请求的用户认证是通过Session和客户端Cookie的实现的,而前后端分离 ...
- [ABP] ASP.NET Zero 5.6.0 之 ASP.NET Zero Power Tools 上手日志
之前破解了这个工具后,却没有使用它. 现在使用这个小工具,帮我完成创建Entity类,Dto类,AppService类,View视图等DDD相关工作以及Entity Framework Migrati ...
- springboot打成war包找不到文件
项目在eclipse运行是可以的,但是打成war包到线上报错: FileNotFoundException: class path resource [static/apiclient_cert.p1 ...
- better-scroll 中的img标签无法触发长按保存菜单
better-scroll 默认禁用的多数标签的默认行为,启用默认行为需加如下属性 preventDefaultException: { tagName: /^(IMG|INPUT|TEXTAREA| ...
- requirejs官网
http://www.requirejs.cn/
- 复旦大学2017--2018学年第二学期(17级)高等代数II期末考试第六大题解答
六.(本题10分) 设 $A$ 为 $n$ 阶幂零阵 (即存在正整数 $k$, 使得 $A^k=0$), 证明: $e^A$ 与 $I_n+A$ 相似. 证明 由 $A$ 是幂零阵可知, $A$ ...
- eclipse juint4 出错!!!
今天在学习javaee,调用方法的时候突然出现这个错误,之前还好使,调用了几次就不好使了,我查了很多问题,据说是harmcrest的jar包没有导进来,或者是junit的jar包版本太低了,我过段时间 ...
- [译]RabbitMQ教程C#版 - 远程过程调用(RPC)
先决条件 本教程假定 RabbitMQ 已经安装,并运行在localhost标准端口(5672).如果你使用不同的主机.端口或证书,则需要调整连接设置. 从哪里获得帮助 如果您在阅读本教程时遇到困难, ...
- Linux (麒麟)系统 重启后无法登陆进图形界面
登录图形化界面的时候,会显示GNOME电源管理器没启动等提示信息,会一直卡在登录界面 在启动的时候按ESC或者在登录界面crtl+alt +f3 进入字符终端界面 查看物理存储空间占用信息,可能会有一 ...