大学的时候对web开发很感兴趣,对网页中的动画,对用户注册,对网页中表格填写等等都倍感兴趣。加之又有专业课程编程语言java,因此,对java web产生了浓厚的兴趣,再加之有北京圣思园 风中叶 大师的视频教程,我的大四生活就这么充足的过完了,现在想想多亏了那段时间的兴趣努力啊,要不然就不会得到现在的这份工作啊。
好了,不说废话了。最近又看到一款新的框架,所以将其拿出来与大家分享下,共同学习共同进步啦~~
Jdiy初识:
Jdiy是一位疯狂爱好者自己开发的简易框架,他自己办了一个网站,自己承担编辑,自己发布信息担任站长。主要开发了两个框架:JDiy和JSer。其中JDiy是免费的,目前没有开源,后期框架完善了可能会考虑开源。现在在学校JDiy还没有看他的Jser.
1.在javaSE环境中使用JDiy:
若想使用JDiy需要先配置开发环境:
1. 下载得到JDiy最新版的压缩包,在压缩包根目录下有一个名为"JDiy-n.n.jar"的文件(其中n.n代表版本号),这个文件是JDiy框架的核心类库文件,请先将其放到您项目的lib目录中;当你使用eclipse的时候,需要在源代码目录下新建lib文件夹,将其关联到eclips即可,大家应该都会操作吧~如下图:
解压之后的JDiy如下图:
将JDiy下的Jdiy-1.9.jar放到自己新建的项目下的lib文件夹下即可。
2. 将下面列出的这些JDiy框架所依赖的类库文件也一并放到lib目录中。
(注:您可以从JDiy下载的压缩包的depend-jars目录中找到这些文件)
ant.jar;
cos.jar;
dom4j-1.6.1.jar;
jaxen-1.1.3.jar;
log4j-1.2.15;
mail.jar;
slf4j-api-1.5.6.jar;
slf4j-log4j12-1.5.6.jar
3. 再看您使用的是什么数据库,从JDiy下载的压缩包的databases目录中找到对应的数据库驱动,一并添加到项目的lib目录。例如我们以MySQL为例,则将databases/MySQL/mysql-connector-java-5.1.15-bin.jar这个文件放到项目的lib目录下。
4. 将JDiy的XML配置文件(即下载的JDiy压缩包根目录下的jdiy.xml)放到项目的class类路径下.并修改jdiy.xml配置文件中的数据库连接信息.例如下面的配置代码段(请修改下面红色的数据库连接信息部分):
......前面的省略
MYSQL
127.0.0.1
3306
jdiy_db
root
123456
32
WAIT
......后面的省略
经过这样的简单配置,就可以在您的javaSE代码中使用JDiy操作数据库了!
二、使用JDiy框架操作数据库
下面我们来看一个用JDiy框架操作数据库的java代码示例:
假设您有一个用于测试的数据库表(表名为test, 有三个字段, id, name, age, 您可以在mysql中通过下面的DDL建表语句创建一个这样的数据表):
create table test (
id int(11) primary key not null auto_increment,
name varchar(50),
age int(11)
)
在您的项目class类路径下新建一个Test.java类,其代码如下:
import net.jdiy.core.*;
import net.jdiy.util.Fs;
import java.net.URL;
public class Test {
public static void main(String[] args) throws Exception {
//下面的URL对象用于指定jdiy.xml配置文件的位置(相对于class目录):
URL xmlLocation = Fs.getResource("jdiy.xml");
//指定您的应用程序根路径地址(APP_ROOT),也可以直接写绝对路径,例如:"e:\\myjava\\jdiy-test"
String rootPath = Fs.getResource("../").toString();
//创建一个JDiy上下文对象:
JDiyContext jdc = JDiyContext.newInstance(xmlLocation, rootPath);
//从JDiy上下文中取出数据库默认的操作DAO对象:
Dao dao = jdc.getDao();
//下面创建一个Rs对象(即对应数据库中的记录), 并写入到数据库
Rs rs = new Rs("test");
rs.set("name","张三");
rs.set("age", 18);
dao.save(rs);//写入数据库
System.out.println(rs.get("id"));//写入数据库后可以直接从rs中取到自增的主键ID值
//再来创建一条记录,设置数据库字段的值时,可以连着写喔~~
Rs rs1 = new Rs("test").set("name","李四").set("age", 27);
dao.save(rs1);//写入数据库
//把test表中的数据全查出来
Ls ls = dao.ls(new Args("test"));
//循环输出看一下:
for(Rs item : ls.getItems()){
System.out.println("姓名:"+item.get("name")+"; 年龄:"+item.get("age"));
//输出之后把这条记从数据库中删除:
dao.del(item);
System.out.println("已经删除了!");
}
}
}
看到了吗?是不是非常简单呢?上面短短的示例代码已经包含了数据表的记录写入,读取和删除.您可以编译并运行此文件,并查看控制台中的输出结果.