学号 20175201张驰 《Java程序设计》第7周学习总结

学号 20175201张驰 《Java程序设计》第7周学习总结

教材学习内容总结

第八章

String类能有效地处理字符序列信息,它的常用方法有:

  1. public int length()可以统计一个String对象的字符序列的长度
    2.public String substrings(int startpoint)可以获得一个新的String对象,新的String对象的字符序列是复制当前String对象的字符序列中的startpoint位置至最后位置上的字符所得到的字符序列
    3.public String trim()可以得到一个新的String对象,而新的String对象的字符序列是当前String对象的字符序列去掉前后空格的字符序列
    4.StringTokenizer类不区分标识符、数和带引号的字符串,它们也不识别并跳过注释。既可以在创建时指定,同样也可以根据每个标记来指定分隔符
    5.StringBuffer类和String类:String的值是不能改变的,值只要改变就会变成新的对象,然而StringBuffer可以很方便的增删查改字符串的内容而不会改变对象!

第十一章

连接数据库:Connection getConnection(java.lang.String, java.lang.String, java.lang.String) ,Connection getConnection(java.lang.String)

条件与排序查询: where 子语句
排序
order by 子语句对记录进行排序
order by <字段名>
更新 update 表 set 字段 = 新值 where<条件子句>
添加 insert into 表(字段列表)value (对应的具体的记录)
删除 delete from 表名 where <条件子句>
事务:事务是由SQL语句组成的,事务处理是指:应用程序保证事务中的SQL语句要么全部都执行,要么一个都不执行
JDBC事务处理步骤:
1.用setAutoCommit(booean b)方法关闭自动提交模式
2.用commit()方法处理事务
3.用rollback()方法处理事务失败

教材学习中的问题和解决过程

课后练习

第八章课后编程题
1.public class E {

public static void main (String args[ ]) {

String s1,s2,t1="ABCDabcd";

s1=t1.toUpperCase();

s2=t1.toLowerCase();

System.out.println(s1);

System.out.println(s2);

String s3=s1.concat(s2);

System.out.println(s3);

}

}

  1. public class E {

public static void main (String args[ ]) {

String s="ABCDabcd";

char cStart=s.charAt(0);

char cEnd = s.charAt(s.length()-1);

System.out.println(cStart);

System.out.println(cEnd);

}

}

  1. import java.util.*;

public class E {

public static void main (String args[ ]) {

int year1,month1,day1,year2,month2,day2;

try{ year1=Integer.parseInt(args[0]);

month1=Integer.parseInt(args[1]);

day1=Integer.parseInt(args[2]);

year2=Integer.parseInt(args[3]);

month2=Integer.parseInt(args[4]);

day2=Integer.parseInt(args[5]);

}

catch(NumberFormatException e)

{ year1=2012;

month1=0;

day1=1;

year2=2018;

month2=0;

day2=1;

}

Calendar calendar=Calendar.getInstance();

calendar.set(year1,month1-1,day1);

long timeYear1=calendar.getTimeInMillis();

calendar.set(year2,month2-1,day2);

long timeYear2=calendar.getTimeInMillis();

long 相隔天数=Math.abs((timeYear1-timeYear2)/(10006060*24));

System.out.println(""+year1+"年"+month1+"月"+day1+"日和"+

year2+"年"+month2+"月"+day2+"日相隔"+相隔天数+"天");

}

}

  1. import java.util.*;

public class E {

public static void main (String args[ ]) {

double a=0,b=0,c=0;

a=12;

b=24;

c=Math.asin(0.56);

System.out.println(c);

c=Math.cos(3.14);

System.out.println(c);

c=Math.exp(1);

System.out.println(c);

c=Math.log(8);

System.out.println(c);

}

}

5.public class E {

public static void main (String args[ ]) {

String str = "ab123you你是谁?";

String regex = "\D+";

str = str.replaceAll(regex,"");

System.out.println(str);

}

}

6. import java.util.*;

public class E {

public static void main(String args[]) {

String cost = "数学87分,物理76分,英语96分";

Scanner scanner = new Scanner(cost);

scanner.useDelimiter("[^0123456789.]+");

double sum=0;

int count =0;

while(scanner.hasNext()){

try{ double score = scanner.nextDouble();

count++;

sum = sum+score;

System.out.println(score);

}

catch(InputMismatchException exp){

String t = scanner.next();

}

}

System.out.println("总分:"+sum+"分");

System.out.println("平均分:"+sum/count+"分");

}

}

第十一章课后编程题

  1. import java.sql.*;

import java.util.*;

public class E {

public static void main(String args[]) {

Query query=new Query();

String dataSource="myData";

String tableName="goods";

Scanner read=new Scanner(System.in);

System.out.print("输入数据源名:");

dataSource = read.nextLine();

System.out.print("输入表名:");

tableName = read.nextLine();

query.setDatasourceName(dataSource);

query.setTableName(tableName);

query.setSQL("SELECT * FROM "+tableName);

query.inputQueryResult();

}

}

class Query {

String datasourceName=""; //数据源名

String tableName=""; //表名

String SQL; //SQL语句

public Query() {

try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

}

catch(ClassNotFoundException e) {

System.out.print(e);

}

}

public void setDatasourceName(String s) {

datasourceName = s.trim();

}

public void setTableName(String s) {

tableName = s.trim();

}

public void setSQL(String SQL) {

this.SQL = SQL.trim();

}

public void inputQueryResult() {

Connection con;

Statement sql;

ResultSet rs;

try {

String uri = "jdbc:odbc:"+datasourceName;

String id = "";

String password = "";

con = DriverManager.getConnection(uri,id,password);

DatabaseMetaData metadata = con.getMetaData();

ResultSet rs1 = metadata.getColumns(null,null,tableName,null);

int 字段个数 = 0;

while(rs1.next()) {

字段个数++;

}

sql = con.createStatement();

rs = sql.executeQuery(SQL);

while(rs.next()) {

for(int k=1;k<=字段个数;k++) {

System.out.print(" "+rs.getString(k)+" ");

}

System.out.println("");

}

con.close();

}

catch(SQLException e) {

System.out.println("请输入正确的表名"+e);

}

}

}

  1. import java.sql.*;

import java.util.*;

public class E {

public static void main(String args[]) {

Query query = new Query();

String dataSource = "myData";

String tableName = "goods";

query.setDatasourceName(dataSource);

query.setTableName(tableName);

String name = "";

Scanner read=new Scanner(System.in);

System.out.print("商品名:");

name = read.nextLine();

String str="'%["+name+"]%'";

String SQL = "SELECT * FROM "+tableName+" WHERE name LIKE "+str;

query.setSQL(SQL);

System.out.println(tableName+"表中商品名是"+name+"的记录");

query.inputQueryResult();

}

}

class Query {

String datasourceName=""; //数据源名

String tableName=""; //表名

String SQL; //SQL语句

public Query() {

try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

}

catch(ClassNotFoundException e) {

System.out.print(e);

}

}

public void setDatasourceName(String s) {

datasourceName = s.trim();

}

public void setTableName(String s) {

tableName = s.trim();

}

public void setSQL(String SQL) {

this.SQL = SQL.trim();

}

public void inputQueryResult() {

Connection con;

Statement sql;

ResultSet rs;

try {

String uri = "jdbc:odbc:"+datasourceName;

String id = "";

String password = "";

con = DriverManager.getConnection(uri,id,password);

DatabaseMetaData metadata = con.getMetaData();

ResultSet rs1 = metadata.getColumns(null,null,tableName,null);

int 字段个数 = 0;

while(rs1.next()) {

字段个数++;

}

sql = con.createStatement();

rs = sql.executeQuery(SQL);

while(rs.next()) {

for(int k=1;k<=字段个数;k++) {

System.out.print(" "+rs.getString(k)+" ");

}

System.out.println("");

}

con.close();

}

catch(SQLException e) {

System.out.println("请输入正确的表名"+e);

}

}

}

代码托管

图片.png

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 4000行 30篇 400小时
第五周 5840 8/8 10 linux学习
·
posted @ 2019-04-12 14:02  20175201张驰  阅读(214)  评论(0)    收藏  举报