一、
1.Java有那些基本数据类型,String是不是基本数据类型,他们有何区别。
int、char、byte、float、double、short、boolean、long。
String不是基本数据类型,其为对象,是引用数据类型(类、接口、数组等)。
基础类型与引用类型的区别是,基础类型只表示简单的字符或数字,引用类型可以是任何复杂的数据结构
基本类型仅表示简单的数据类型,引用类型可以表示复杂的数据类型,还可以操作这种数据类型的行为
java虚拟机处理基础类型与引用类型的方式是不一样的,对于基本类型,java虚拟机会为其分配数据类型实际占用的内存空间,而对于引用类型变量,他仅仅是一个指向堆区中某个实例的指针。
引用类型、对象、引用值:
引用类型包含:类、接口、数组
对象:即类或者数组的实例
引用值:引用对象的指针
2.字符串的操作:
写一个方法,实现字符串的反转,如:输入abc,输出cba
写一个方法,实现字符串的替换,如:输入bbbwlirbbb,输出bbbhhtccc。
字符串反转:public void reverse (String reStr){
char[] reChar= reStr.toCharArray();
char m;
int n = reChar.length - 1;
for(int i=0;i<reChar.length/2;i++){
m = reChar[i];
reChar[i] = reChar[n-i];
reChar[n-i] = m;
}
System.out.println(String.valueOf(reChar));
}
字符串替换
3.数据类型之间的转换
如何将数值型字符转换为数字(Integer,Double)
如何将数字转换为字符
如何取小数点前两位,并四舍五入。
Integer.valueOf(""); Double.valueOf("");
String.valueOf();
double t=1898.179;
t = t * 100;
t=Math.round(t);
t = t/100;
System.out.println(t);
4.日期和时间
如何取得年月日,小时分秒
如何取得从1970年到现在的毫秒数
如何获取某个日期是当月的最后一天
如何格式化日期
Date date=new Date();
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(formatter.format(date));
date.getTime()
date.after(...)
5.数组和集合
Java集合类:
集合类之间的基本关系为:
Collection(实现该接口的对象至少包含两个构造方法,一个为无参构造方法,初始化一个空集合;另一个以Collection类型的实例为参数,初始化的集合拥有实参中的所有数据元素)
|
|----List(其中数据元素可以重复,也可以为null值)
| |
| |--ArrayList(数组,自增长,非线程安全)
| |
| |---LinkedList(双向链表,先进先出队列,非线程安全,通过其中的内部类来实现)
| |
| |----Vector(线程安全,可在其构造方法中设定自增长值)
| | |
| |--Stack
|
|
|-----Set(其中数据元素不能重复,但可以为null值)
|
|--HashSet(不保证其中数据元素顺序,允许null值,非线程安全)
| |
| |--LinkedHashSet(其内部结构为双链表,其余与HashSet相同)
|
|--TreeSet
|
Map(通过 键----值 对来实现存储,key不能重复,且key与value一一对应,至少有两种构造方法,无参构造方法和以Map为参的构造方法,允许自身为value但不允许为key)
|
|
|---HashMap()
|
|
|---TreeMap()
附:HashMap与HashTable异同:都实现了Map接口,HashMap非线程安全,HashTable线程安全;HashMap速度快于HashTable,允许null做为key值或value值。
6.文件和目录(I/O)操作
如何列出某个目录下的所有文件
如何列出某个目录下的所有子目录
判断一个文件或目录是否存在
如何读写文件
public void getFileName(File[] file){
for(int i=0;i<file.length;i++){
if(file[i].isDirectory()){
getFileName(file[i].listFiles());
}else{
System.out.println(file[i].getName());
}
}
}
public void getFileName(File[] file){
for(int i=0;i<file.length;i++){
if(file[i].isDirectory()){
getFileName(file[i].listFiles());
System.out.println(file[i].getName());
}
}
}
file.exists();
//最基本的读写
File file = new File("E:\\upfile\\test.txt");
try {
BufferedWriter bw = new BufferedWriter(new FileWriter(file));
bw.write("sklfjslfjkfjlkjlkjl苏联空军冷静思考了该贷款利率");
bw.flush();
bw.close();
BufferedReader br = new BufferedReader(new FileReader(file));
System.out.println(br.readLine());
br.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
7.Java多态的实现(继承、重载、覆盖)
8.编码转换,怎样实现将GB2312编码的字符串转换为ISO-8859-1编码的字符串。
9.Java中访问数据库的步骤,Statement和PreparedStatement之间的区别。
实例化与所用数据库相匹配的数据库驱动程序,连接数据库,进行数据库操作,关闭数据库。
以Mysql数据库为例:
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection(url);
con.close();
java在与数据库打交道的过程中,总会与Connection、PreparedStatement、ResultSet这几个类扯上关系;首先在这说明一下PreparedStatement与Statement的区别:
1.PreparedStatement是预编译的,对于批量处理可以大大提高效率.
2.使用 Statement 对象。在对数据库只执行一次性存取的时侯,用 Statement 对象进行处理。PreparedStatement 对象的开销比Statement大,对于一次性操作并不会带来额外的好处。
3.statement每次执行sql语句,相关数据库都要执行sql语句的编译,preparedstatement是预编译得, preparedstatement支持批处理
4.执行许多SQL语句的JDBC程序产生大量的Statement和PreparedStatement对象。通常认为PreparedStatement对象比Statement对象更有效,特别是如果带有不同参数的同一SQL语句被多次执行的时候。PreparedStatement对象允许数据库预编译SQL语句,这样在随后的运行中可以节省时间并增加代码的可读性。
使用PreparedStatement类时尽量采用?方式传递参数
二、JSP&Servlet技术
1.描述JSP和Servlet的区别、共同点、各自应用的范围
JSP基于Servlet之上,是为弥补Servlet在展现层方面的不足而开发出来的一种技术,JSP最终仍会被编译成.class文件来执行。Servlet为纯Java代码,其擅长业务处理不擅长前台展现(也可实现out.write()但非常麻烦);JSP为HTML与JSP标签的混合。在实际项目中一般采用Servlet实现业务逻辑,JSP生成动态网页,实现业务逻辑与前台展现的分离。在Struts框架中,JSP控制视图层,Servlet负责控制层。
2.在Web开发中需要处理HTML标记时,应做什么样的处理,要筛选那些字符(< > & “”)
可以使用正则表达式来筛选。
3.在JSP中如何读取客户端的请求,如何访问CGI变量,如何确定某个Jsp文件的真实路径。
通过客户端向服务器发起的请求
4.描述Cookie和Session的作用,区别和各自的应用范围,Session工作原理。
Cookie存储于客户端,包含客户端的一些信息;Session存储于服务器端,贯穿于整个会话过程中
5.列出Jsp中包含外部文件的方式,两者有何区别。
<%@ include file="" %>
6.说明Jsp中errorPage的作用,应用范围。
7.介绍在Jsp中如何使用JavaBeans。
8.简单介绍JSP的标记库
9.Jsp和Servlet中的请求转发分别如何实现。