Tampilkan postingan dengan label java. Tampilkan semua postingan
Tampilkan postingan dengan label java. Tampilkan semua postingan

Gw coba jelasin proyek ABSOLUNILA dalam English ya.Sekalian belajar. Absolunila is project base of web design.And i use java programming with Spring and Hibernate. First i design for xml file,like applicationContext.xml, dispatcher-servlet.xml, web.xml. In may project i use annotation.

First I create Fakultas.class and Jurusan.class in model package.



Fakultas.class
/**
*
* @author dedy
*/
@Entity
@Table(name="fakultas")
public class Fakultas implements Serializable{

@Id
@Column(name="kode_fakultas",length=5,nullable=false,unique=true)
private String kodeFakultas;
@Column(name="nama_fakultas",length=100,nullable=false,unique=false)
private String namaFakultas;
@OneToMany(mappedBy="fakultas")
@Column(name="kode_jurusan")
//@Cascade({CascadeType.DELETE_ORPHAN})
private Set jurusans;

//getter and setter

@Override
public String toString() {
return ToStringBuilder.reflectionToString(this);
}

@Override
public boolean equals(Object obj) {
return EqualsBuilder.reflectionEquals(this, obj);
}

@Override
public int hashCode() {
return HashCodeBuilder.reflectionHashCode(this);
}




Jurusan.class
/**
*
* @author dedy
*/
@Entity
@Table(name="jurusan")
public class Jurusan implements Serializable{

@Id
@Column(name="kode_jurusan",length=5,nullable=false,unique=true)
private String kodeJurusan;
@Column(name="nama_jurusan",length=100,nullable=false,unique=false)
private String namaJurusan;
@ManyToOne
@JoinColumn(name="kode_fakultas")
private Fakultas fakultas;

//getter and setter

@Override
public String toString() {
return ToStringBuilder.reflectionToString(this);
}

@Override
public boolean equals(Object obj) {
return EqualsBuilder.reflectionEquals(this, obj);
}

@Override
public int hashCode() {
return HashCodeBuilder.reflectionHashCode(this);
}

Then made the DAO class.

FakultasDao.class
public interface FakultasDao {

public Fakultas save(Fakultas fakultas);
public void delete(Fakultas fakultas);
}



JurusanDao.class
public interface JurusanDao {

public Jurusan save(Jurusan jurusan);
}


Then made class for implementation

FakultasDaoImpl.class
@Repository("fakultasDao")
public class FakultasDaoImpl implements FakultasDao {

private static final Log log = LogFactory.getLog(FakultasDaoImpl.class);
private SessionFactory sessionFactory;

@Autowired
public void setSessionFactory(SessionFactory sessionFactory) {
this.sessionFactory = sessionFactory;
}

public Fakultas save(Fakultas fakultas) {
sessionFactory.getCurrentSession().save(fakultas);
return fakultas;
}

public void delete(Fakultas fakultas) {
sessionFactory.getCurrentSession().delete(fakultas);
}



JurusanDaoImpl.class
@Repository("jurusanDao")
public class JurusanDaoImpl implements JurusanDao{

private static final Log log = LogFactory.getLog(JurusanDaoImpl.class);
private SessionFactory sessionFactory;

@Autowired
public void setSessionFactory(SessionFactory sessionFactory) {
this.sessionFactory = sessionFactory;
}

public Jurusan save(Jurusan jurusan) {
this.sessionFactory.getCurrentSession().save(jurusan);
return jurusan;
}


Next made class service and it implementation

FakultasService.class
public interface FakultasService {

public Fakultas save(Fakultas fakultas);
public void delete(Fakultas fakultas);
}



JurusanService.class
public interface JurusanService {

public Jurusan save(Jurusan jurusan);
}



FakultasServiceImpl.class
@Repository("fakultasService")
@Transactional(readOnly=true)
public class FakultasServiceImpl implements FakultasService{

private FakultasDao fakultasDao;

@Autowired
public void setFakultasDao(FakultasDao fakultasDao) {
this.fakultasDao = fakultasDao;
}

@Transactional(readOnly=false)
public Fakultas save(Fakultas fakultas) {
fakultasDao.save(fakultas);
return fakultas;
}

@Transactional(readOnly=false)
public void delete(Fakultas fakultas) {
fakultasDao.delete(fakultas);
}



JurusanServiceImpl.class
@Repository("jurusanService")
@Transactional(readOnly=true)
public class JurusanServiceImpl implements JurusanService{

private JurusanDao jurusanDao;

@Autowired
public void setFakultasDao(JurusanDao jurusanDao) {
this.jurusanDao = jurusanDao;
}

@Transactional(readOnly=false)
public Jurusan save(Jurusan jurusan) {
jurusanDao.save(jurusan);
return jurusan;
}


At least we made controller class


IndexController.java
@Controller(value="indexController")
public class IndexController {

@RequestMapping("/index.htm")
public void index() {

}


After all class has been made, we should test the class.I make class FakultasTest.class


@ContextConfiguration(locations = {"applicationContext.xml"})
@TransactionConfiguration(transactionManager = "transactionManager")
public class FakultasTest extends AbstractTransactionalJUnit38SpringContextTests {

private static final Log log = LogFactory.getLog(FakultasTest.class);

@Resource
private FakultasService fakultasService;
@Resource
private JurusanService jurusanService;

public void testCreateTable() {
log.info("membuat tabel");
}

@Rollback(false)
public void testSaveFakultas(){
log.info("membuat fakultas");
Fakultas fak = new Fakultas();
fak.setKodeFakultas("tek");
fak.setNamaFakultas("teknik");
fakultasService.save(fak);

//jurusan
log.info("membuat jurusan");
Jurusan jur = new Jurusan();
jur.setFakultas(fak);
jur.setKodeJurusan("elt");
jur.setNamaJurusan("elektro");
jurusanService.save(jur);
}


So, this my first posting.Actually the class model has been completely.May this posting can help u for learn java.Any comment,question,critic?

Akhirnya kemaren sore menyelesaikan subversion di netbeans 6.5.1 tetapi belum selesai banget sih karena cuma bisa ambil repository dari http://absounila.googlecode...

Seharusnya bisa ambil https. Error didapatkan di setting proxy yang harus memakai password. Tapi untuk https: belum tau nih error dimana. Nih ada situs menarik untuk pengetahuan subversion di netbeans.