




已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 JAVA1.1 JDK环境变量配置安装完JDK后,需要配置环境变量。配置环境变量目的有三个:第一,让操作系统自动查找编译器、解释器所在的路径;第二,设置程序编译和执行时需要的类路径;第三,Tomcat服务器安装时需要知道虚拟机所在的路径。(1)设置好path变量,使得我们能够在系统中的任何地方运行java应用程序,比如javac、java、javah等等,这就要找到我们安装JDK的目录,比如我们的JDK安装在C:jdk1.6.0目录下,那么在C:jdk1.6.0bin目录下就是我们常用的java应用程序,我们就需要把C:jdk1.6.0bin这个目录加到path环境变量里面。在系统变量里找到path变量,选择-编辑;(里面已经有很多的变量值,是在变量值的最前面加上C:jdk1.6.0bin;)变量名:path变量值:C:jdk1.6.0bin;(2)classpath环境变量,是当我们在开发java程序时需要引用别人写好的类时,要让java解释器知道到哪里去找这个类。通常,sun为我们提供了一些额外的丰富的类包,一个是dt.jar,一个是tools.jar,这两个jar包都位于C:jdk1.6.0lib目录下,所以通常我们都会把这两个jar包加到我们的classpath环境变量中set classpath=.;C:jdk1.6.0libtools.jar;C:jdk1.6.0libdt.jar; C:jdk1.6.0lib在系统环境变量那一栏中点-新建classpath变量名:classpath变量值:.;%JAVA_HOME%libtools.jar;%JAVA_HOME%libdt.jar;(注意,CLASSPATH最前面是有个“.”的,表示当前目录,这样当我们运行java AClass的时候,系统就会先在当前目录寻找AClass文件了。);(3)设置JAVA_HOME:一是为了方便引用,比如,JDK安装在C:jdk1.6.0目录里,则设置JAVA_HOME为该目录路径, 那么以后要使用这个路径的时候,只需输入%JAVA_HOME%即可,避免每次引用都输入很长的路径串;二则是归一原则,当JDK路径改变的时候,仅需更改JAVA_HOME的变量值即可,否则,就要更改任何用绝对路径引用JDK目录的文档,要是万一没有改全,某个程序找不到JDK,后果是可想而知的系统崩溃!三则是第三方软件会引用约定好的JAVA_HOME变量,不然,你不能正常使用该软件。在系统环境变量那一栏中点-新建JAVA_HOME (JAVA_HOME指向的是JDK的安装路径) 变量名:JAVA_HOME 变量值:C:jdk1.6.0(4)测试是否配置成功配置完成下面写一个简单的java程式来测试J2SDK是否已安装成功:publicclassHelloWorld publicstaticvoidmain(Stringargs) ystem.out.println(Helloworld!); 将程式保存为文档名为HelloWorld.java的文档。打开命令提示符窗口,进入到HelloWorld.java所在目录,键入下面的命令javacHelloWorld.java javaHelloWorld此时若打印出来HelloWorld则安装成功,若没有打印出这句话,仔细检查以上配置是否正确。1.2 Action1.2.1 Action传参数1import javax.servlet.http.HttpServletRequest;HttpServletRequest request = ServletActionContext.getRequest();request.setAttribute(validity, 1);JSP中对应取参数:String validity=(String)request.getAttribute(validity);1.2.2 Action传参数2import java.io.IOException;import java.io.PrintWriter; import javax.servlet.http.HttpServletResponse;HttpServletResponse response=ServletActionContext.getResponse();response.setCharacterEncoding(utf-8);try System.out.println(name is # + name);PrintWriter pw = response.getWriter();pw.print(result:名称重复,请重新输入);pw.close(); catch (IOException e) e.printStackTrace();1.2.3 Action传参数3Struts配置: Action:private String message;public String getMessage() return message;public void setMessage(String message) this.message = message;this.message=名称重复,请重新输入;System.out.println(result is +this.message);return message;1.3 数据库1.3.1 数据库链接package com.edatongtu.utils;import java.sql.*; public class JdbcConnection public static String url =jdbc:oracle:thin::1521:ORCL; public static String username =lijuan; public static String password =123456; static try Class.forName(oracle.jdbc.driver.OracleDriver); catch (ClassNotFoundException e) throw new ExceptionInInitializerError(e); public static Connection getConnection() throws SQLException return DriverManager.getConnection(url, username, password); Connection con=JdbcConnection.getConnection();con.setAutoCommit(true); 自动提交 Statement myStatement=con.createStatement();注:需导入 com.edatongtu.utils.JdbcConnection1.3.2 Sql语句1.数据选择语句String sql=select * from tablestore where id=+lmid+; ResultSet rs=myStatement.executeQuery(sql);if(rs.next() element=rs.getString(element); 2.数据插入语句:String sql=”insert into refermodeltable (lmid,id,lmuniquename) values(”+lmid+”,”+id+”,”+uniquename+”)”;3.更新数据:update tablestore set default_style=“+id+” where id=”+lmid+”4.删除语句:delete from refermodeltable where id=”+lmid+”5.删除表:drop table+表名6条件查询:select classification_id,classification_name,classification_explain,(case if_default_classification when 0 then 否 when 1 then 是 end) if_default_classification from sys_ib_classification_system7.新建表: create table lijuantest2(id varchar(300) primary key,name varchar(300) not null)create table QT_4 (QUESTION_ID VARCHaR(50) primary key ,itembank_id varchar(50),question_type varchar(50),difficulty float(1),defaultpoint number(38),time_use number(38),knowledge_point_id varchar(50),editor_id varchar(50),update_time Date,explain varchar(50) default(无) ,statue number(38) default(1)8.更改表名:ALTER TABLE table111 RENAME TO table2229. or 和and 混合查询SELECT * FROM Persons WHERELastName=Svendson AND (FirstName=Tove OR FirstName=Ola)10 case select 选择查询select rownum rn,cu.question_id,cu.defaultpoint,cu.time_use,cu.knowledge_point_id,cu.editor_id,cu.UPDATE_TIME,cu.TIME,cu.EXPLAIN,(case when difficulty0 then 简单 when difficulty0.3 then 中等 when difficulty0.7 then 困难 end) DIFFICULTY, (case QUESTION_TYPE when xuanze then 选择题 when panduan then 判断题 when tiankong then 填空题 when jianda then 简答题 end) QUESTION_TYPE from QT_BASICFIELD_lijuantest1 cu11 表格数据复制(普通数据和BLOB数据均可以复制)insert into QT_BLOBFIELD_LIJUANTEST2 SELECT * FROM QT_BLOBFIELD_LIJUANTEST1 WHERE QUESTION_ID=5e2393ca-b754-42e0-bd78-26088d069ed51.4 字符串处理1.4.1 list转jsonJSONArray zNodes = JSONArray.fromObject( list );1.4.2 转jsonJSONObject zNodes = JSONObject.fromObject( list );1.4.3 判断字符串中是否有某个字段String ascs=ascs;if(ascs.indexOf(asc)!=-1)System.out.println(%);1.4.4 字符串转换,去空格大写defaultsort.trim().toUpperCase().equals(YES)1.4.5 字符串转date型di.executeQuery(insert into QT_BASICFIELD_ + target_itembank+ fields(question_id,EDITOR_ID,TIME,QUESTION_TYPE) values(+questionid+, + cell24+ , + to_date(+cell12+,yyyy-MM-dd) + , + questiontype + );1.4.6 哈希表package com.edatongtu.utils;import java.util.HashMap;import java.util.Iterator;import java.util.Map;public class MapUtils public static Map getParameterMap(Map properties) / 返回值MapMap returnMap = new HashMap();Iterator entries = properties.entrySet().iterator();Map.Entry entry;String name = ;Object value = ;while (entries.hasNext() entry = (Map.Entry) entries.next();name = (String) entry.getKey();Object valueObj = entry.getValue();if(null = valueObj)value = ;else if(valueObj instanceof String)String values = (String)valueObj;for(int i=0;ivalues.length;i+)value = valuesi + ,;value = String.valueOf(value).substring(0, String.valueOf(value).length()-1);elsevalue = valueObj;returnMap.put(name, value);return returnMap;Map params=MapUtils.getParameterMap(request.getParameterMap();Iterator it = params.entrySet().iterator();while (it.hasNext() Map.Entry entry = (Map.Entry) it.next(); String paramName=(String)entry.getKey(); if(paramName.startsWith(main_) elementName=paramName.substring(main_.length(); style_element+=+elementName+:+elementName+,+elementTitle+:+params.get(fld_+elementName+_title)+,+isdisplay+:+params.get(fld_+elementName+_display)+,+isanchor+:+params.get(fld_+elementName+_anchor)+,; style_element=style_element.substring(0,style_element.length()-1);style_element=+style_element+;1.4.7 时间正则表达式 String eL = 0-94-0-92-0-92;Pattern p = Ppile(eL);Matcher m = p.matcher(bbb);boolean dateFlag = m.matches();if (!dateFlag) System.out.println(格式错误);System.out.println(格式正确);1.4.8 ajax前台向后台传数据乱码问题后台处理String str=new String(SortName.getBytes(iso-8859-1),utf-8);前台处理:URL后跟参数是get方式,Data后aa:aapost方式应采用post方式。1.5 IO1.5.1 将文件以blob写入数据库先插入再更新di.execute(insert into QT_BLOBFIELD_ + target_itembank+ values(+blob_Id+,empty_blob(),empty_blob();/插入空数据String TableName=QT_BLOBFIELD_ + target_itembank+ ;String IdField=question_id;String FieldName=questioncontent;File file3 = new File(d:+docname+.doc); InputStream in = null;/获取试题文件流try in = new FileInputStream(file3); catch (FileNotFoundException e) e.printStackTrace(); service.exercuteInsertWithBlob(TableName, IdField,blob_Id, FieldName, in);public String exercuteInsertWithBlob(String TableName, String IdField,String Id, String FieldName, InputStream InStream) Connection connection = null;Statement statement = null;OutputStream outStream =null;Stringresult=true;StringSql=select +FieldName+ from +TableName+ where +IdField+=+Id+ for update;try connection = ConnPool.getConnection();statement = connection.createStatement();ResultSet rs = statement.executeQuery(Sql);if (rs.next() logger.debug(come in);/ 得到java.sql.Blob对象,然后Cast为oracle.sql.BLOBoracle.sql.BLOB blob = (oracle.sql.BLOB) rs.getBlob(1);/ 到数据库的输出流outStream = blob.getBinaryOutputStream();/ 将输入流写到输出流byte b = new byteblob.getBufferSize();int len = 0;while (len = InStream.read(b) != -1) outStream.write(b, 0, len);elselogger.debug(dont come in);result=nodata;if(null!=InStream)InStream.close(); if(null!=outStream)outStream.flush(); outStream.close(); if(null!=connection)mit(); ConnPool.freeResource(rs, statement, connection); catch (Exception e) e.printStackTrace();result=error;return result;1.5.2 获取inputstream流File file3 = new File(d:+docname+.doc); InputStream in = null;/获取试题文件流try in = new FileInputStream(file3); catch (FileNotFoundException e) e.printStackTrace();1.5.3 InputStream Convert to fileFile file4 = new File(D:11111.doc);InputStream in = null;/ 获取试题文件流try in = new FileInputStream(file4); catch (FileNotFoundException e) e.printStackTrace(); try File f=new File(D:lijuan111.doc); OutputStream out=new FileOutputStream(f); byte buf=new byte1024; int len; while(len=in.read(buf)0) out.write(buf,0,len); logger.debug(&*&); out.close(); in.close();/BufferedWriter bw = new BufferedWriter(new FileWriter(D:data.doc); /bw.write(in); catch (IOException e) / TODO Auto-generated catch blocke.printStackTrace(); 1.6 文件操作1.6.1 Java删除文件String filePath = d:+newdocname+.doc;File file = new File(filePath);file.delete(); 1.6.2 Fileupload文件上传 if (ServletFileUpload.isMultipartContent(request) DiskFileItemFactory dff = new DiskFileItemFactory(); dff.setRepository(tmpDir); dff.setSizeThreshold(1024000); ServletFileUpload upload = new ServletFileUpload(dff); upload.setFileSizeMax(5000000); upload.setSizeMax(10000000); List items = upload.parseRequest(request); Iterator iter = items.iterator(); while (iter.hasNext() FileItem fis = (FileItem) iter.next(); if (!fis.isFormField() & fis.getName().length() 0) String fileName = fis.getName(); realname=fis.getName().substring(0,fis.getName().lastIndexOf(.); suffix= fis.getName().substring( fis.getName().lastIndexOf(.); UniqueName=EDTTUUID.getUUID(); BufferedInputStream in = new BufferedInputStream(fis.getInputStream(); BufferedOutputStream out1 = new BufferedOutputStream( new FileOutputStream(new File(saveDir + + UniqueName+suffix); Streams.copy(in, out1, true); 1.7 Session1.7.1 Session 保存传递的数据if(request.getParameter(id)!=null)lmid=request.getParameter(id);session.setAttribute(LMID, lmid);elselmid=(String)session.getAttribute(LMID);1.8 常用1.8.1 自动生成idSys_guid();1.8.2 UUID使用package com.edatongtu.utils;import com.eaio.uuid.UUID;public class EDTTUUID public static String getUUID()returnnew UUID().toString();id=EDTTUUID.getUUID();注:需导入 com.edatongtu.utils.EDTTUUID1.8.3 路劲存储String savePath=/viewmodel;String dsavePath=request.getRealPath(savePath);1.8.4 批量删除ResultSet rs=myStatement.executeQuery(select id from refermodeltable);String checkedIds=;while(rs.next()String chkItemValue=request.getParameter(chk+rs.getString(id);if(chkItemValue=null) else if(chkItemValue.equals(on) if(!checkedIds.equals() checkedIds+=,; checkedIds+=+rs.getString(id)+; if(!checkedIds.equals() String sql=delete from refermodeltable where id in (+checkedIds+); myStatement.execute(sql); rs.close(); myStatement.close(); con.close();1.9 接口和类1.9.1 接口定义:public interface SortService public String addSort(String message,String name,String identifier,String discription,String defaultsort) ;1.9.2 具体实现:public class SortServiceImpl implements SortServicepublic String addSort(String message,String name,String identifier,String discription,String defaultsort) 1.9.3 调用类:方式一:SortService SortAddAction=new SortServiceImpl();SortAddAction.addSort(message,name,identifier,discription,defaultsort);方式二:运用Spring依赖注入1)SortService SortAddAction=(SortService)BeanLoader.getBean(SortServiceImpl);SortAddAction.addSort(message,name,identifier,discription,defaultsort);Spring配置:2)private SortServiceImpl SortAddAction ;public SortServiceImpl getSortAddAction() return SortAddAction;public void setSortAddAction(SortServiceImpl sortAddAction) SortAddAction = sortAddAction;SortAddAction.addSort(message,name,identifier,discription,defaultsort);Spring配置:1.10 Jacob word操作参考资料中jacob函数JacobWordBeanServiceImpl wordBean = new JacobWordBeanServiceImpl();/ 检查试题基本信息表格UUID newdocuuid = UUID.randomUUID(); String newdocname=newdocuuid.toString();wordBean.CreateDoc(newdocname);/ 创建一个新文件wordBean.OpenFile(d:+newdocname+.doc);wordBean.SetVisible(true); / 是否前台打开word 程序,或者后台运行wordBean.copyTableFromAnotherDoc(d:xiaokai.doc, 1);UUID savedocuuid = UUID.randomUUID(); String savedocname=newdocuuid.toString();wordBean.saveFileAs(d:+savedocname+.doc);/ 保存第一个表格,必须另存,不然会在前台是否保存word,则无法执行删除工作/ 检查表格行数列数是否正确int rowCount = wordBean.gettableRow();/ 表格行数int colCount = wordBean.gettableColumn();/ 表格列数int cols1 = wordBean.getCols(1);/ 第一行列数int cols2 = wordBean.getCols(2);/ 第二行列数 /* * * 名称:gettableColumn * 说明:获取表格列数 * 参数:param anotherDocPath * 参数:param tableIndex 设定文件 * 返回值:void 返回类型 * param anotherDocPath * param tableIndex * author:lijuan */ public int gettableColumn() Dispatch tables = Dispatch.get(document, Tables).toDispatch(); int tableCount = Dispatch.get(tables, Count).getInt(); / document中的表格数量 Dispatch table = Dispatch.call(tables, Item, new Variant(tableCount) .toDispatch();/ 文档中最后一个table Dispatch cols = Dispatch.get(table, Columns).toDispatch(); int colCount = Dispatch.get(cols, Count).getInt(); return colCount; /* * * 名称:gettableRow * 说明:TODO(这里用一句话描述这个方法的作用) * 参数:return 设定文件 * 返回值:int 返回类型 * return * author:lijuan */ public int gettableRow() Dispatch tables = Dispatch.get(document, Tables).toDispatch(); int tableCount = Dispatch.get(tables, Count).getInt(); / document中的表格数量 Dispatch table = Dispatch.call(tables, Item, new Variant(tableCount) .toDispatch();/ 文档中最后一个table Dispatch rows = Dispatch.get(table, Rows).toDispatch(); / 此表的所有行, int rowCount = Dispatch.get(rows, Count).getInt(); return rowCount; /* * * 名称:getCols * 说明:获取某一行的列数 * 参数:return 设定文件 * 返回值:int 返回类型 * return * author:lijuan */ public int getCols(int a) Dispatch tables = Dispatch.get(document, Tables).toDispatch(); int tableCount = Dispatch.get(tables, Count).getInt(); / document中的表格数量 Dispatch table = Dispatch.call(tables, Item, new Variant(tableCo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 九年级信息技术下册 赢在网络时代教学设计 青岛版
- 服装新员工入职培训方案
- 【平安证券】经济结构转型系列报告之二:中国经济结构转型与中长期投资机遇展望
- 2024中铝海外发展有限公司公开招聘3人笔试参考题库附带答案详解
- 人教精通版英语六年级下册 Revision 教学教案+音视频素材
- 二年级数学下册 五 加与减第7课时 算得对吗1教学设计 北师大版
- 人教版地理七上2.1《大洲和大洋》备课指导及教学设计
- 初中语文-第六单元《庄子与惠子游于濠梁之上》庄子二则教学设计-2024-2025学年统编版语文八年级下册
- 初中语文人教部编版(2024)八年级上册背影第一课时教案设计
- 人教部编版历史七下2.9《宋代经济的发展》教学设计
- 中考数学复习备考-几何专题突破与拓展训练题
- 卫生院B超、心电图室危急值报告制度及流程
- 医疗器械经营公司-年度培训计划表
- 校园青年志愿者培训(服务礼仪讲解)
- 肿瘤化疗-课件
- 第三节钢筋混凝土排架结构单层工业厂房结构吊装课件
- 教练员教学质量信誉考核表
- 普通高中学生综合素质评价档案
- 2023年郑州工业应用技术学院单招考试面试题库及答案解析
- 酒店工程部维修工作单
- 军考哲学知识点
评论
0/150
提交评论