导航:首页 > 编程语言 > java动态生成java文件

java动态生成java文件

发布时间:2022-08-05 11:43:46

A. 怎么用java动态生成pdf文档

Flying-Saucer + iText + Velocity
1. 第一步
将jar包放到你的工程里,需要的jar如下:
bcprov-jdk15-140.jar
core-renderer.jar
iText-2.0.8.jar
iTextAsian.jar
velocity-1.4.jar
Jar包下载地址:http://code.google.com/p/flying-saucer/downloads/list
2. 第二步
设计模版,进行排版调整样式,css样式也可以导入@import 等,通过Velocity模版引擎动态替换 页面内容,以下是模版内容:
<?xml version="1.0" encoding="UTF-8" ?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>PDF模版</title>
<style type="text/css">
<!--
body {
font: 100% Verdana, Arial, Helvetica, sans-serif;
margin: 0;
padding: 0;
text-align: center;
color: #000000;
}
.oneColLiqCtrHdr #container {
width: 100%;
margin: 0 auto;
text-align: left;
}
div.header-left {display: none}
div.header-right {display: none}
div.footer-left {display: none}
div.footer-right {display: none}

B. 怎样用java代码动态生成数据库表

这个就要借助hibernate tools跟xdoclet来完成了;
首先你要在你的java代码里应用xdoclet标签,例如
Java code
private String name;

/**
* @hibernate.property column = "name" length = "50"
*/
public String getName() {
return this.name;
}

public void setName(String name) {
this.name = name;
}

其中,写到javadoc上的@hibernate.property column = "name" length = "50"
就是xdoclet标签,它需要xdoclet程序来处理,这里就需要用到hibernate tools。
具体做的话一般情况是建一个ant脚本来完成,例如:
XML code
<target name="hibernate-xdoclet" depends="init, init-xdoclet_hibernate"
description="Generate mapping documents">

<echo>+---------------------------------------------------+</echo>
<echo>| |</echo>
<echo>| R U N N I N G H I B E R N A T E D O C L E T |</echo>
<echo>| |</echo>
<echo>+---------------------------------------------------+</echo>

<delete>
<fileset dir="$" includes="hibernate.cfg.xml" />
</delete>
<echo message="hibernate.cfg.xml at $"></echo>
<sleep seconds="1"/>

<hibernatedoclet
destdir="$"
excludedtags="@version,@author,@todo,@see"
addedtags="@xdoclet-generated at $,@right The XDoclet Team,@author XDoclet,@version $"
force="false"
verbose="true">

<fileset dir="$">
<include name="com/**/model/**/*.java"/>
</fileset>
<hibernatecfg
version="3.0"
destDir="$"
dialect="org.hibernate.dialect.Oracle9Dialect"
driver="oracle.jdbc.driver.OracleDriver"
jdbcUrl="jdbc:oracle:thin:@localhost:1521:RESDL"
userName="test"
password="123"
showSql="true"
schema="true"
validateXML="true"
/>
<hibernate version="3.0"/>
</hibernatedoclet>

</target>
上面的代码是生成hbm跟cfg文件的,下面再介绍如何从java类到数据库:
XML code
<target name="hibernate-schema" depends="init, init-hibernate-schema"
description="Generate DB schema from the O/R mapping files">

<echo>+---------------------------------------------------+</echo>
<echo>| |</echo>
<echo>| R U N N I N G D B S C H E M A |</echo>
<echo>| |</echo>
<echo>+---------------------------------------------------+</echo>

<echo message="mysql.sql at etc/hbm2doc"></echo>
<sleep seconds="1"/>

<hibernatetool destdir="etc/hbm2doc">
<configuration propertyFile="$/hibernate.properties">
<fileset dir="$">
<include name="com/**/model/**/*.hbm.xml"/>
</fileset>
</configuration>
<hbm2ddl drop="true"
outputfilename="mysql.sql"/>
<hbm2doc/>
</hibernatetool>

</target>

当然ant工程里的一些初始化需要自己定义,我这里只摘录关键部分,具体的东西请查阅相关文档,hibernate tutorail里就有个例子

C. 如何动态去生成一个bean 88classnameextendsjava

创建javabean操作步骤:
定义一个class,比如TestBean。先定义好属性(字段),再定义好构造方法,类似:
public TestBean {
private String name;
private String password;
private String emailAddr;

public TestBean() {
}
// getter和setter方法
}
在package browser(包浏览器)中右键单击java文件,选择sources(源代码),再选择Generate getter and setter(生成getter和setter方法),在弹出的对话框里选择要自动生成的属性,通常选择select all(全部选择),最后点OK就可以了。
分享

D. 在Java中,有没有动态生成方法的...办法

这个也能实现的,这就得利用java的动态编译,java中可以利用代码临时生成java文件,并且执行编译,运行,但这个有一点麻烦,还要用到java中的反映机制.

apache的commons-beanutils包中就有这样的方法,hibernate中映射类中的get与set方法是存在的.最好不要用临时生成java文件,动态编译.

E. Java动态生成代码

可以的,我说说大概思路,很简单,你自己具体实现吧,把代码写给你没意义的:
1.将你这段字符串输出到一个文件里,用Java类文件的方式命名。
2.调用外部javac命令将该文件编译。
3.用类加载器(ClassLoad)动态加载新的class文件并用Class.forName()注册该类,然后就可以正常使用了。
上面的每一步都能在中找到实现方法,自己发挥吧。

F. 怎样通过后台action的java代码,动态的在webroot下生成文件

思路:在action中写个生成文件的方法,然后适当时候调用就可以了。
举例,生成txt文件,放到webroot下:
String text = request.getParameter("text");
String readStr=""; //用于一直存储
String read=""; //用于临时读取
FileReader fileread;
BufferedReader bufread;
try {
fileread = new FileReader("C:\\Documents andSettings\\Administrator\\Workspaces\\MyEclipse8.6\\TaskTwo\\WebRoot\\b.txt");
bufread = newBufferedReader(fileread);
try {
while ((read = bufread.readLine()) != null) {
readStr = readStr +read;
}
} catch (IOException e) {
e.printStackTrace();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}

G. java动态生成方法

可以的,我说说大概思路,很简单,你自己具体实现吧,把代码写给你没意义的:
1.将你这段字符串输出到一个文件里,用Java类文件的方式命名。
2.调用外部javac命令将该文件编译。
3.用类加载器(ClassLoad)动态加载新的class文件并用Class.forName()注册该类,然后就可以正常使用了。
上面的每一步都能在中找到实现方法,自己发挥吧。
求采纳

H. java编译动态生成的类提示缺少包.类

这种情况,在A中,不可能import引用B相关的,要全部使用反射调用B类的属性或方法。

I. java的动态代理到底生成了什么

动态生成的实现类中的所有方法都是调用了this.h.invoke方法(即InvocationHandler的接口方法).
看到此, 也明白了java动态代理的实现机制了.
通过Proxy.newProxyInstance`调用ProxyGenerator.generateProxyClass方法获得实现类的字节码数据, 然后加载到jvm中, 在调用构造函数, 生成实例. 这里是简化的过程, 其中还有一些权限检查,缓存和优化处理等, 对于如何生成class文件的, 可以看下ProxyGenerator的代码, 简单的说就是按照指定的格式写入字节码, 可以看出, 生成的实现类方法都是很有规律的

J. java怎么动态生成文文件夹

new File("c:\\abc\\ader\\eior").mkdirs();
这个样子

booleanmkdirs()
Creates the directory named by this abstract pathname, including any
necessary but nonexistent parent directories.

阅读全文

与java动态生成java文件相关的资料

热点内容
红塔银行app怎么样 浏览:562
农行app怎么开网银 浏览:649
java迭代器遍历 浏览:301
闽政通无法请求服务器是什么 浏览:48
怎么做积木解压神器 浏览:203
王者荣耀解压玩具抽奖 浏览:49
12位是由啥加密的 浏览:868
程序员编迷你世界代码 浏览:895
php取现在时间 浏览:246
单片机高吸收 浏览:427
怎么区分五代头是不是加密喷头 浏览:244
hunt测试服务器是什么意思 浏览:510
2013程序员考试 浏览:641
毕业论文是pdf 浏览:736
服务器跑网心云划算吗 浏览:471
单片机定时器计数初值的计算公式 浏览:801
win7控制台命令 浏览:567
猫咪成年app怎么升级 浏览:692
360有没有加密软件 浏览:315
清除cisco交换机配置命令 浏览:751