java标本库管理系统代码

上传人:n**** 文档编号:45331913 上传时间:2018-06-15 格式:PDF 页数:60 大小:337.33KB
返回 下载 相关 举报
java标本库管理系统代码_第1页
第1页 / 共60页
java标本库管理系统代码_第2页
第2页 / 共60页
java标本库管理系统代码_第3页
第3页 / 共60页
java标本库管理系统代码_第4页
第4页 / 共60页
java标本库管理系统代码_第5页
第5页 / 共60页
点击查看更多>>
资源描述

《java标本库管理系统代码》由会员分享,可在线阅读,更多相关《java标本库管理系统代码(60页珍藏版)》请在金锄头文库上搜索。

1、1/60标本库管理系统是由 java 编写的一套软件系统,它由两部分组成: 1、web 部分,客户端是 ie6.0 浏览器 2、RCP 部分,用于集中管理标本库 一下是 Web 部分的相关代码及配置文件说明: Web 部分基于 SHH 技术(Struts、Spring、Hibernate),并且遵循 MVC 设计模式,所以相应的代 码也清晰地分成 java 简单原始类、数据库操作类(DAO 层)、业务逻辑类(business),整个 web 系统有很多部分组成,包括 20 个包以及相关配置文件、jsp 页面、javascript 脚本等等。下面 是代码展示:样本类型枚举类: package o

2、rg.scbit.tissuebank.cfg;/* author wuyifei* version 1.0.0*/public enum TissueStatEnum DISDOCIATION(“dissociation“),/未入库STORED(“stored“),/ 已入库RESERVE(“reserve“), / 已预定LENDED(“lended“),/ 已出借USEUP(“useup“);/ 已耗尽 private String name;private TissueStatEnum(String name) this.name = name;public String getNa

3、me() return name;持久化类: package org.scbit.tissuebank.utils;import java.io.BufferedReader;import java.io.File;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.IOException;import java.io.PrintWriter;import java.util.regex.Matcher;import java.util.regex.Patternimport mons.cl

4、i.BasicParser;import mons.cli.CommandLine;import mons.cli.CommandLineParser;2/60import mons.cli.HelpFormatter;import mons.cli.Option;import mons.cli.Options;import mons.cli.ParseException;public class DomainPostProcessor private final static String IMPORT_ORDERBY = “importjavax.persistence.OrderBy;n

5、“;public static void main(String args) DomainPostProcessor dpp = new DomainPostProcessor();dpp.run(args);private void run(String args) Options opts = new Options();opts.addOption(“h“, false, “Print help for this command linetool“);opts.addOption(“s“, true, “Java-Source-File-Path“);opts.addOption(“c“

6、,true,“class to remove mappedby,the format likeclassA,mappedbyB,mappedbyC;classD,mappedbyE“);Option opt = new Option(“o“, true,“collection to add orderby,the format libclassA,relationClassB,OrderBy value“);opt.setArgs(Option.UNLIMITED_VALUES);opts.addOption(opt);CommandLineParser parser = new BasicP

7、arser();CommandLine cl = null;try cl = parser.parse(opts, args); catch (ParseException e) / TODO Auto-generated catch blocke.printStackTrace();if (cl.hasOption(“h“) HelpFormatter f = new HelpFormatter();f.printHelp(“OptionsTip“, opts); else if (cl.hasOption(“s“) if (cl.hasOption(“c“)removeMappedBy(c

8、l);if (cl.hasOption(“o“)addOrderBy(cl);3/60 else HelpFormatter f = new HelpFormatter();f.printHelp(“OptionsTip“, opts);private void addOrderBy(CommandLine cl) String srcPath = cl.getOptionValue(“s“);String targets = cl.getOptionValues(“o“);for (String target : targets) String tmp = target.split(“;“)

9、;File srcFile = new File(srcPath + “/“ + tmp0 + “.java“);String srcStr = readClassFile(srcFile);srcStr = orderByPostProcessor(srcStr, tmp1,tmp2.replaceAll(“_“, “ “);File distFile = new File(srcPath + “/_“ + tmp0 + “.java“);saveClassFile(srcStr, distFile);srcFile.delete();distFile.renameTo(srcFile);p

10、rivate String readClassFile(File srcFile) BufferedReader in = null;try in = new BufferedReader(new FileReader(srcFile); catch (FileNotFoundException e) / TODO Auto-generated catch blocke.printStackTrace();String s;StringBuilder sb = new StringBuilder();try while (s = in.readLine() != null)sb.append(

11、s).append(“n“);in.close(); catch (IOException e) / TODO Auto-generated catch blocke.printStackTrace();return sb.toString();private void saveClassFile(String srcStr, File distFile) PrintWriter out = null;try 4/60out = new PrintWriter(distFile); catch (FileNotFoundException e) / TODO Auto-generated ca

12、tch blocke.printStackTrace();out.print(srcStr);out.flush();out.close();private void removeMappedBy(CommandLine cl) String srcPath = cl.getOptionValue(“s“);String groups = cl.getOptionValue(“c“).split(“;“);for (String g : groups) String classes = g.split(“,“);File srcFile = new File(srcPath + “/“ + c

13、lasses0 + “.java“);String srcStr = readClassFile(srcFile);for (int i = 1; i get“ + className+ “e?s()s)$“, Pattern.MULTILINE);/ 创建 Matcher 对象 Matcher m = p.matcher(srcStr);while (m.find() distStr.append(srcStr.substring(lastpostion, m.start();String beginPart = m.group(1);String endPart = m.group(3);

14、distStr.append(beginPart).append(endPart);5/60lastpostion = m.end();distStr.append(srcStr.substring(lastpostion,srcStr.length();return distStr.toString();private String orderByPostProcessor(String srcStr, String className,String orderByValue) StringBuilder tmpSB = new StringBuilder();StringBuilder d

15、istStr = new StringBuilder();int lastpostion = 0;/ 表达式对象 Pattern p = Ppile(“(?:One|Many)ToMany(?:.*)n)(s+publicsList)“, Pattern.MULTILINE);/ 创建 Matcher 对象 Matcher m = p.matcher(srcStr);while (m.find() tmpSB.append(srcStr.substring(lastpostion, m.start();String beginPart = m.group(1);String endPart = m.group(2);tmpSB.append(beginPart).append(“OrderBy(“).append(orderByValue).append(“)n“).append(endPart);lastpostion = m.end();tmpSB.append(srcStr.substring(lastpostion, srcStr.length();p = Ppile(“(?:imports.*;n)+)“,Pattern.MULTILINE);String tmp

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 电子/通信 > 综合/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号