- 浏览: 45023 次
- 性别:
- 来自: 成都
最新评论
-
yimengyuanyun:
浅度克隆后,里面的对象是不是还是指向原来的对象,所以tcb. ...
深度克隆和浅度克隆的总结 -
lihengzkj:
编辑过程中出现了错误,谅解!拦截器的代码在最下面。
struts2中使用自定拦截器
文章列表
JPA初探07---联合主键的使用
- 博客分类:
- ORM框架
联合主键:一般是两个或者以上的字段来标示主键,在JPA中把所有的联合主键的字段放在同一个类中。
那么Java类的设计:专门设计一个类,用来存放联合主键字段,而且该类只能存放联合主键字段。
【联合主键类设计】
package 联合主键;
import java.io.Serializable;
import javax.persistence.Embeddable;
/**
* 联合主键类(航线的联合主键类,连个点为一线)
* @author 青山
* @date 2014年10月20日
* @file name: AirWayPK.java
...
JPA初探06---多对多的双向关联
- 博客分类:
- ORM框架
多对多的关系,在项目中一定会遇到,而我们在项目中一定会遇到的权限控制。
在权限控制中: 角色和权限的关系就是多对多的关系
下面我们来看看是怎么样进行JPA的配置的
【Java类设计】
package ManyToMany;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import ...
JPA初探05---一对多的双向关联
- 博客分类:
- ORM框架
关系:
订单 ---> 订单项
一对多的双向关联
JPA规范:一对多的双向关联,多的一方是负责关系维护,负责外键的更新。关系的被维护段是没有权利更新外键的。其实我们仔细理解:本来一对多的关系中多方是记录一方的外键,那么肯定是由多方去更新自己的外键。
【Java类设计,包含数据库设计】
package OneToMany;
import java.util.Date;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
...
JPA初探04---一对一的双向关联
- 博客分类:
- ORM框架
关系:
公民 --- 身份证
一对一的关系
数据库设计
create table t_citizen (
cid int primary key,
cname varchar,
cardid int
);
create table t_card(
cid int primary key,
cardno varchar(45)
);
【Java类设计】
package oneToOne;
import javax.persistence.CascadeType;
import javax.persistence.Co ...
create table t_user(
id int primary key auto_increment,
user_name varchar(50),
birthday date,
infor longtext,
gender varchar(10)
);
【Java类:】
package bean;
import java.util.Date;
import java.util.List;
import javax.persistence.Basic;
import javax.persistence.Column;
import j ...
【实例背景介绍】两种实体类:1. 学生类 StudenBean 学生类下面有两个子类:体育特长生SportsStudentBean、艺术生PrintStudentBean2. 班级类 ClazzBean
关系:1. StudenBean 是 SportsStudentBean 和 PrintStudentBean 的父类2. ClazzBean 和 StudenBean 是一对多的关系
【数据库表】
create table t_student(
sid int primary key,
sname varchar(45),
clazzid int,
study ...
JPA一个最简单的Demo
首先,环境准备JDK1.7 、Eclipse 、MYSQL 【第一步:找jar包】由于JPA的实现由很多,在这里使用的是hibernate对JPA的实现,所以所有的jar包都是使用的hibernate的,所以需要到hibernate官网下载所有的hibernate的jar包。网址:http://hibernate.org/这里我下载的文件是:hibernate-release-4.3.5.Final.zip解压以后呢,在该解压的文件夹中找齐以下的jar包:
(具体jar包看附件)
【第二步:准备JPA的配置文件】在项目中的src下创建一个文件夹:META ...
struts2中使用自定拦截器
- 博客分类:
- struts2
struts2中实现自定义的拦截器,有三种方式:
1、实现interceptor接口
2、继承AbstractInterceptor这个抽象类
3、继承MethodFilterInteceptor类
这里我只用了第一种方式:
<interceptors > <interceptor name="InterceptorOne" class="com.nce.interceptor.MyInterceptorOne"></interceptor> </intercep ...
bat文件调用jar文件操作
- 博客分类:
- Java基础
这两天接了一个task,要求使用bat批处理文件执行jar文件,从来没有写过批处理文档,在网上找了许久,还是没有实现,最后自己慢慢摸索出了问题的所在,和大家分享哈。
第一步:编写自己的Java文件,我这里使用了Eclipse建了个项目叫TestJar,然后在默认包下建了一个Test.java文件:
public class Test {
public static void main(String []args){
System.out.println("***********");
}
}
第二步:导出jar文件:test.jar
在file工具栏 ...
package com.learn.test0624;
public interface Test1 {
void value();
class Test implements Test1{
public void value() {
// TODO Auto-generated method stub
System.out.println("*********");
}
public static void main(String [] args){
new Test().value();
}
}
}
...
/******类中嵌套接口*****/
class A {
interface B{//----------------B
void f();
}
public class BImp implements B{
public void f() {}
}
private class BImp2 implements B{
public void f() {}
}
public interface C{//public----------------C
void f();
}
class CImp implements C{
p ...
还是先看看示例代码:
public class Child extends Parent{
private int i =3;
public Child() {
// TODO Auto-generated constructor stub
}
public final void test1(){
System.out.println("-----");
}
public static void main(String [] args){
Child child = new Child();
child.test();
...
class Ding{
public String toString(){
return "Ding";
}
}
class Grain extends Ding{
public String toString(){
return "Grain";
}
}
class Wheat extends Grain{
public String toString(){
return "Wheat";
}
}
/***********************/
class Mill{
...
以前不知道在循环中可以使用标签。最近遇到后,举得还是有其独特的用处的。我这么说的意思是说标签在循环中可以改变循环执行的流程。而这种改变不是我们以前单独使用break或者是continue能够达到的。下面还是看看实例吧。
outer1:
for(int i =0;i<4;i++){
System.out.println("begin to itrate. "+i);
for(int j =0;j<2;j++){
if(i==2){
continue outer1;
// break;
}
Sys ...
Java 把内存划分成两种:一种是栈内存,另一种是堆内存。在函数中定义的一些基本类型的变量和对象的引用变量都是在函数的栈内存中分配,当在一段代码块定义一个变量时,Java 就在栈中为这个变量分配内存空间,当超过 ...