JPA Trim() Function

In this section, you will learn about the JPQL trim() function. This function will trimmed the space character from your given string.

JPA Trim() Function

JPA Trim() Function

     

In this section, you will learn about the JPQL trim() function. This function will trimmed the space character from your given string.

JPA Trim() Function:

Query trimQuery=em.createQuery("UPDATE Student st SET st.sname=TRIM(st.sname)");

This query remove all spaces characters from the given string as sname.

For JPA Trim application, you need the following artifacts:

  1. Database Table: student
  2. Model Class: Student.java
  3. Main Class: JPATrimFunction.java

Database Table: student

CREATE TABLE `student` ( 
`id` int(11) NOT NULL auto_increment, 
`sname` varchar(100) NOT NULL, 
`sroll` int(11) NOT NULL, 
`scourse` varchar(10) NOT NULL, 
PRIMARY KEY (`id`) 

Model Class: Student.java

/**

*/
package roseindia;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;

/**
* @author Administrator
*
*/
@Entity
@Table(name="student")

public class Student {

@Id
@GeneratedValue
private int id;

/**
* @return the id
*/
public int getId() {
return id;
}

/**
* @param id the id to set
*/
public void setId(int id) {
this.id = id;
}

@Column(name="sname", length=100,nullable=false)
private String sname;

/**
* @return the sname
*/
public String getSname() {
return sname;
}

/**
* @param sname the sname to set
*/
public void setSname(String sname) {
this.sname = sname;
}

@Column(name="sroll",nullable=false)
private int sroll;

/**
* @return the sroll
*/
public int getSroll() {
return sroll;
}

/**
* @param sroll the sroll to set
*/
public void setSroll(int sroll) {
this.sroll = sroll;
}

@Column(name="scourse",length=10,nullable=false)
private String scourse;

/**
* @return the scourse
*/
public String getScourse() {
return scourse;
}

/**
* @param scourse the scourse to set
*/
public void setScourse(String scourse) {
this.scourse = scourse;
}

}

Main Class: JPATrimFunction.java

/**

*/
package roseindia;

import java.util.Iterator;
import java.util.List;

import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.EntityTransaction;
import javax.persistence.Persistence;
import javax.persistence.Query;

/**
* @author Administrator
*
*/
public class JPATrimFunction {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub

EntityManagerFactory emf=Persistence.createEntityManagerFactory("jpa");
EntityManager em=emf.createEntityManager();
try{
EntityTransaction entr=em.getTransaction();
entr.begin();
Query query=em.createQuery("SELECT st FROM Student st");
List stuList=query.getResultList();
Iterator stuIterator=stuList.iterator();
while(stuIterator.hasNext()){
Student st=(Student)stuIterator.next();
System.out.print("sname:"+st.getSname());
System.out.println();
}
//TIRM
Query trimQuery=em.createQuery("UPDATE Student st SET st.sname=TRIM(st.sname)");
int updateRecord=trimQuery.executeUpdate();
System.out.println(updateRecord+" records are updated");
entr.commit();
}
finally{
em.close();
}

}

}

Output:

log4j:WARN No appenders could be found for logger
(org.hibernate.cfg.annotations.Version).

log4j:WARN Please initialize the log4j system properly.

Hibernate: select student0_.id as id0_, student0_.scourse as
scourse0_, student0_.sname as sname0_, student0_.sroll as
sroll0_ from student student0_

sname:vinod

sname: Ravi kumar

sname: Suman Saurabh kumar

Hibernate: update student set sname=trim(sname)

3 records are updated

 

Before Trimming the string:

After Trimming the String: