本人个人以为Java的学习需重点掌握以下知识:
core Java部分:多綫程编程、网络编程(Socket)、集合、反射、Stream & I/O、Swing(重点是事件监听)、设计模式。
J2EE部分:JDBC、JSP & Servlet、JNDI、RMI、EJB3.0、XML、Web Service、设计模式。
框架方面:Struts、Hibernate、Spring、POI、Jasperreport & iReport、Log4J.
Web Server方面:Weblogic、Jboss.
开发工具:Jbuilder、Eclipse。
一、JDBC(Java DataBase Connectivity):是基于JAVA语言访问数据库的一种技术。
二、JDBC的设计思想:由SUN公司提供访问数据的接口,再由各数据库厂商提供对这些接口的实现。程序员编程时都是针对接口进行编程。
三、JDBC API:主要在JDK里的java.sql.*各javax.sql.*两个包里。
JDBC API 是编程时的规范,主要给程序员使用及各数据库厂商使用。而JDBC规定主要是文字方式的规范。
四、使用JDBC编程的6个步骤:
1、注册驱动程序(指定驱动类)
Class.forName("oracle.jdbc.driver.OracleDriver");
2、获取数据库的连接:
Connection con = DriverManager.getConnection("URL",pro);
3、创建Statement接口,用来执行SQL语句:
Statement stm = con.createStatement();
4、执行SQL语句:
ResultSet rs = stm.execute(sql);
5、如果有返回结果值,就处理结果值.
rs.next()---->rs.getString();
6、释放资源,关闭连接。
rs.close();
stm.close();
con.close();
java 递归算法 背包问题!!
背包问题.设有一个背包可以放入物品的重量为s,现在n件物品,重量分别为w[0],w[1]......w[n-1].问题是能否从这n件物品中选择若干件放入此背包中使得放入的重量之和正好等于s. 如果存在一种符合上述要求的选择,则称此背包问题有解;否则称此背包问题无解. 试用分而治之的算法设计求解背包问题的函数.
提示:此背包问题的递推定义如下(其中true表示有解,false表示无解):
knap(s,n)={true s=0 此时问题有解
knap(s,n)={ flase s<0 总重量不能为负解
knap(s,n)={flase s>0且n<1 物品件数不能为负数
knap(s,n)={knap(s,n-1) s>0且n>=1 所选物品不包括w[n-1]时
knap(s,n)={knap(s-w[n-1],n-1) s>0且n>=1 所选物品包括w[n-1]时