November 15, 2015
										
									
									
									
										转自:http://www.cnblogs.com/pythontesting/p/4963021.html Java Web开发介绍 简介 Java很好地支持web开发,在桌面上Eclipse RCP谈不上成功,JAVA是主要用在服务器端,和Python一样是极其重要的Web后台开发语言。 Java Web应用通常不直接在服务器上运行,而是在Web容器内。容器提供的运行时环境,提供JVM (Java Virtual Machine)运行本地Java应用。容器本身也运行在JVM。 通常Java的分为两个容器:Web容器和Java EE容器。典型的Web容器是Tomcat或Jetty。Web容器支持Java Servlet和JavaServer Page的执行。 Java EE容器支持更多的功能,例如,服务器负载的分布。 大部分现代的Java Web框架是基于servlet的。流行的Java Web框架有GWT,JavaServer Faces,Struts和Spring框架。这些Web框架通常需要至少需要Web容器。 Java Web应用程序是动态的资源(如Servlet,JavaSe
									
								
						
							
								
									
									
										
										November 15, 2015
										
									
									
									
										Tomcat源代码部署分为几个步骤 源代码下载 使用ant和build.xml进行编译 修改BuildPath,添加Jar包环境不报错为止 (1) 源代码下载的SVN路径为:http://svn.apache.org/repos/asf/tomcat/tc7.0.x/tags/TOMCAT_7_0_35 这边是使用的是Myeclipse下载的svn插件进行下载的。 http://svn.apache.org/repos/asf/tomcat/目录下还可以找到其他的版本的Tomcat。 (2) 下载之后需要进行对Tomcat工程使用ant进行编译,ant为Myeclipse的插件,build.properties.default修改成build.properties ,ant会按照build.properties内容进行下载依赖的包,然后根据build.xml进行打包编译。未与-source 1.6 一起设置引导类路径,在ant编译的时候可能会出现如下图的问题,这边需要工程的编译环境设置成1.6的JDK即可。 (3)修改BuildPath 增加SOURCE文件 增加Jar包 1.增加So
									
								
						
							
								
									
									
										
										November 15, 2015
										
									
									
									
										单例模式的定义:一个类就有一个实例对象,而且自行实例化,并向整个系统提供这个实例。 单例模式根据实例化对象的时机不同分为两种:饿汉式单例、懒汉式单例。 懒汉式单例: public class Singleon{
     private static Singleon singleon  = new Singleon();
     private Singleon(){}
     pulic static Singleon getInstance(){
           return singleon;
   }
}
 饿汉式单例: public class Singleon{
      private static Singleon singleon = null;
      private Singleon(){}
      public static synchronized Singleon getInstance(){    //加上synchronized 纯粹就是为了线程安全,这里我就不多说了,自己接触的不多,没有发言权
       
									
								
						
							
								
									
									
										
										November 15, 2015
										
									
									
									
										编写一个程序,此程序在运行时要求用户输入一个 整数,代表某门课的考试成绩,程序接着给出“不及格”、“及格”、“中”、“良”、“优”的结论。 要求程序必须具备足够的健壮性,不管用户输入什 么样的内容,都不会崩溃。   import java.util.*;   public class Mark { public static void main(String[] args) { Scanner sc =new Scanner(System.in); int score=0; System.out.print("请输入成绩:");            try         {       score=sc.nextInt();           if(score>=0&&score<=59)              {                System.out.println("不及格");              }              if(score>=60&&score<=69)              {               System.o
									
								
						
							
								
									
									
										
										November 15, 2015
										
									
									
									
										1. 1.1 首先创建一个单列,供外界实用: package cn.com.yong.Utils;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DBConnection {
    private String url="jdbc:mysql://localhost:3306/guimei";
    private String user="root";
    private String password="666888";
    private Connection con=null;
    //构造方法私有化
    private DBConnection(){
        try {
            Class.forName("com.mysql.jdbc.Driver");
            con=DriverManager.getConnection(
									
								
						
							
								
									
									
										
										November 15, 2015
										
									
									
									
										果然还是不够细心啊,被坑一晚上.. 一个极其简单的小程序,但是需要通过xml文件配置注入一个值,唯一的特别是要注入的属性是类中的静态成员变量.. 如下,然后自动生成get和set方法..坑就从此开始了... public class Food{
   private static String  desc;
 
   public static String getDesc(){
       return desc;
  }
   
  public static void setDesc(String desc){
      Food.desc = desc;
  }
} 然后xml中如下配置:  
        
 然后启动就会报找不到set方法的错误...反复对比set方法的名字,无任何异常..然后一晚上就这样报废了... 最后发现自动生成的方法会带static修饰符,而spring的set方法不能
									
								
						
							
								
									
									
										
										November 15, 2015
										
									
									
									
										Tomcat源代码部署分为几个步骤 源代码下载 使用ant和build.xml进行编译 修改BuildPath,添加Jar包环境不报错为止 (1) 源代码下载的SVN路径为:http://svn.apache.org/repos/asf/tomcat/tc7.0.x/tags/TOMCAT_7_0_35 这边是使用的是Myeclipse下载的svn插件进行下载的。 http://svn.apache.org/repos/asf/tomcat/目录下还可以找到其他的版本的Tomcat。 (2) 下载之后需要进行对Tomcat工程使用ant进行编译,ant为Myeclipse的插件,build.properties.default修改成build.properties ,ant会按照build.properties内容进行下载依赖的包,然后根据build.xml进行打包编译。未与-source 1.6 一起设置引导类路径,在ant编译的时候可能会出现如下图的问题,这边需要工程的编译环境设置成1.6的JDK即可。 (3)修改BuildPath 增加SOURCE文件 增加Jar包 1.增加So
									
								
						
							
								
									
									
										
										November 15, 2015
										
									
									
									
										当我们架设一个系统的时候通常需要考虑到如何与其他系统交互,所以我们首先需要知道各种系统之间是如何交互的,使用何种技术实现。 1. 不同系统不同语言之间的交互 现在我们常见的不同系统不同语言之间的交互使用WebService,Http请求。WebService,即“Web 服务”,简写为 WS。从字面上理解,它其实就是“基于 Web 的服务”。而服务却是双方的,有服务需求方,就有服务提供方。服务提供方对外发布服务,服务需求方调用服务提供方所发布的服务。如果说得再专业一点,WS 其实就是建立在 HTTP 协议上实现异构系统通讯的工具。没错!WS 说白了还是基于 HTTP 协议的,也就是说,数据是通过 HTTP 进行传输的。最早我们是用CXF开发SOAP服务实现WS,后面我们是用REST服务实现WS(这个目前使用比较多,也最我用得最多的这一种)。基于CXF也可以开发REST服务,不过我们一般直接使用springMVC或者其他MVC框架实现REST服务。 但是在很多人的印象中Web service的话一般指十来年前IBM主导的基于XML的各种交互技术,现在除了一些公司在用之外用得人也很少了。广
									
								
						
							
								
									
									
										
										November 15, 2015
										
									
									
									
										看见一篇博客,没有写完整,于是增补了一下: 博客原文:http://www.cnblogs.com/alipayhutu/archive/2012/08/11/2634073.html 注:黄色字体为我添的 CopyOnWriteArrayList,因何而存在? ArrayList的一个线程安全的变体,其所有可变操作(add、set 等)都是通过对底层数组进行一次新的复制来实现的,代价昂贵。 CopyOnWriteArrayList,是因”并发”而生。   【场景一】对于ArrayList,使用直接方式,一边遍历,一边删除,会报错。  // 删除/修改元素  for(String item : list){      list.remove(item);  }     原因:foreach语法是通过Iterator来实现的,当遍历这个List的时候,会生成一个ArrayList.Itr对象,这个私有内部类实现了Iterator接口,也就是说上面这段代码与下面这段代码效果一样:   Iterator it = list.iterator() ;   while(it.hasNext())
									
								
						
							
								
									
									
										
										November 15, 2015
										
									
									
									
										简介 Java很好地支持web开发,在桌面上Eclipse RCP谈不上成功,JAVA是主要用在服务器端,和Python一样是极其重要的Web后台开发语言。 Java Web应用通常不直接在服务器上运行,而是在Web容器内。容器提供的运行时环境,提供JVM (Java Virtual Machine)运行本地Java应用。容器本身也运行在JVM。 通常Java的分为两个容器:Web容器和Java EE容器。典型的Web容器是Tomcat或Jetty。Web容器支持Java Servlet和JavaServer Page的执行。 Java EE容器支持更多的功能,例如,服务器负载的分布。 大部分现代的Java Web框架是基于servlet的。流行的Java Web框架有GWT,JavaServer Faces,Struts和Spring框架。这些Web框架通常需要至少需要Web容器。 Java Web应用程序是动态的资源(如Servlet,JavaServer页,Java类,jar)和静态资源(HTML页面和图片)的集合。 Java Web应用程序可以部署为WAR(Web ARchiv
									
								
						
							
								
						 
Recent Comments