发表于: 2018-01-10 22:43:46
2 694
一.昨天只是在数据库运行了一个简单的HelloWorld,今天尝试了一下,带数据库的在服务器上运行jar包
首先:新建一个maven项目,配置好POM.xml
建立Hell类,以前的comNaNteng.HelloWorld自动变为Hell,见图。
然后输入程序
package comNaNteng;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class Hell {
public static void main(String[] args) {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try (Connection c = DriverManager.getConnection("jdbc:mysql://localhost:3306/test",
"root", "1234");
Statement s = c.createStatement();
) {
String sql = "INSERT INTO family VALUES('wangyihtong'" + "," + 125 + "," + 26 +")";
s.execute(sql);
}
catch (SQLException e) {
e.printStackTrace();
}
}
}
本地的test数据库新建一个family数据表,输入name,sex,age。运行程序,测试第一次和第二次的名字和性别数字不能一样。等我打包之前,还要再次修改。
首先用本地的mysql写入SQL语句:"INSERT INTO family VALUES('wangyihtong'" + "," + 125 + "," + 26 +")"; insert into family values(‘wang’,125,26);
打开本地数据库,发现数据写入成功。
这里有个问题,为什么我的性别在程序里不能输入man和weman,而必须输入数字呢?
clean,package,找到路径。通过FlashFXP,重新连接,看连接历史,最近的那条是配置好的,传到服务器。用Xshell5,打开,新建会话2,重连,输入root,从[c:\~]$ 跳转到[root@iZwz918kzgnoj99qj89w9eZ ~]#
输入java -jar comNaNteng-1.0-SNAPSHOT.jar 回车,成功。
打开阿里云数据库,发现写入成功,如图:
二、重写了一下连接池方式插入数据(模仿的成都李亚衡),插入100万条数据,用了14秒
代码如下:package jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Date;
public class Tnsert {
public static void main(String[] args) throws ClassNotFoundException,SQLException {
final String url = "jdbc:mysql://localhost:3306/how2java";
final String name = "com.mysql.jdbc.Driver";
final String user = "root";
final String password = "1234";
Connection conn = null;
Class.forName(name);
conn = DriverManager.getConnection(url,user,password);
if (conn != null) {
System.out.println("获取连接成功");
insert(conn);
} else {
System.out.println("获取连接失败");
}
}
public static void insert(Connection conn) {
Long begin = new Date().getTime();
String prefix = "insert into hero (name,hp,damage) VALUES ";
try {
StringBuffer suffix = new StringBuffer();
conn.setAutoCommit(false);
PreparedStatement pst = (PreparedStatement) conn.prepareStatement("");
for (int i =1; i <=1000; i++) {
suffix = new StringBuffer();
System.out.println("提交1000条");
for(int j = 1; j <= 1000;j++) {
suffix.append("("+"'" +i+"英雄"+j+ "'"+"," + 500 + "," + 40+"),");
}
String sql = prefix + suffix.substring(0,suffix.length() -1);
pst.addBatch(sql);
pst.executeBatch();
conn.commit();
}
} catch (SQLException e) {
e.printStackTrace();
}
Long end = new Date().getTime();
System.out.println("100万条数据插入花费时间:" +(end - begin) / 1000 + " s");
System.out.println("插入完成");
}
}
插入成功时间如图:
三。今天又根据教程重新搭建了一下mybatis+spring。但是老是调不好 。
一开始,public main旁边没有三角形绿色的运行键,上面栏位上倒是有。后来POM不是蓝色了,接口也不是绿色了,再后来application.XML文件没有Spring那个绿色的小树叶了。于是就重装了一下IDEA。
明天再调吧
明天的计划:调好IDEA,搭好mybatis,结尾任务一
遇到的问题:IDEA崩溃了
今天的收获:学会了把带数据库的jar包放在CentOs服务器里运行
java任务一开始时间:2017.12.05
预计demo时间:2018.01-05
可能有延期风险,原因是:已经延期了,基础比较差,
禅道链接地址:http://task.ptteng.com/zentao/project-task-501.html
评论