EN

موستانگ، وحشیِ دوست داشتنی

0 رای
در پاسخ به: نمایش عکس در jsf

برای نمایش عکس از تگ  <h:graphicImage> استفاده می کنیم.

<h:graphicImage  
   value = "image.png"/> 

در این تگ ویژگی های زیر را می توانیم تنظیم کنیم.

width : پهنای عکس

onblur : تار کردن عکس

title : عنوان عکس

0 رای

Second Level cache بازیابی اطلاعات از دیگر session ها است.در first level cache تنها می توانیم اطلاعات را از session خودمان بازیابی کنیم اما در Second Level cache  می توانیم از دیگر session ها نیز بازیابی کنیم.مکانیزم Second Level cache به این صورت می باشد که هایبرنت در هنگام واکشی اطلاعات ابتدا بررسی می کند که آیا اطلاعات مورد نیاز در این session موجود می باشد یا خیر.درصورتیکه اطلاعات دراین session  نبود  دیگر session  ها بررسی می کند.درصورتیکه اطلاعات در دیگر session ها بود آنها را بازیابی می کند در غیر اینصورت از دیتابیس واکشی می کند.

public class HibernateEHCacheExample2 {
 
	public static void main(String[] args) {
 
		System.out.println("java.io.tmpdir: " + System.getProperty("java.io.tmpdir"));
 
		// Initialize Sessions
		SessionFactory sessionFactory = HibernateUtil.getSessionFactory();
		Statistics stats = sessionFactory.getStatistics();
 
		Session session1 = sessionFactory.openSession();
		Session session2 = sessionFactory.openSession();
		Transaction transaction1 = session1.beginTransaction();
		Transaction transaction2 = session2.beginTransaction();
		
		printStats(stats);
		System.out.println("--------Step 1--------");		
		Student student = (Student) session1.load(Student.class, 23L);

		System.out.println("--------Step 2--------");
		student = (Student) session2.load(Student.class, 23L);

		// Release resources
		transaction1.commit();
		transaction2.commit();
		session1.close();
		session2.close();
	}
 
	
		
0 رای

first level cache  دیتاهایی است که در session ذخیره می شوند.در هایبرنت زمانیکه دیتاهایی را از دیتابیس واکشی می کنیم  این دیتاها در session قرار داده می  شوند.در دفعات بعدی درصورتیکه همان دیتاها را نیاز داشته باشیم، هایبرنت به جای  اینکه آنها را از دیتابیس واکشی کند از session  آنها را  استخراج می کند.درصورتکیه  session  بسته شود دیتاهای روی آن نیز از بین می رود.

در مثال زیر می خواهیم اطلاعات دانش آموز با شماره آی دی 1  استخراج کنیم.در بار اول که اینکار را انجام می دهیم  اطلاعات دانش آموز از دیتابیس استخراج می شود.اما در  بار دوم که اینکار را انجام می دهیم  هایبرنت آن را از session بازیابی می کند.

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;

import com.sdnext.hibernate.tutorial.dto.Student;


public class HibernateTestDemo {

 public static void main(String[] args) 
 {
  SessionFactory sessionFactory = new AnnotationConfiguration().configure().buildSessionFactory();
  Session session = sessionFactory.openSession();
  session.beginTransaction();
  
//get student  with id=1
  Student student = (Student) session.get(Student.class, 1);
  
  session.getTransaction().commit();
  session.close();
  
  Session session2 = sessionFactory.openSession();
  session2.beginTransaction();

//get student  with id=1
  Student student2 = (Student) session2.get(Student.class, 1);

  session2.getTransaction().commit();
  session2.close();
 }
}
0 رای

برای دسترسی به مقادیر آبجکت و آرایه و لیست از عبارت زیر استفاده می کنیم:

#{ objectname/array name/ list namme . property name}  

مثلاً داریم:

      <h:outputText value = "#{userData.createTime}"/>

userData نام آبجکت و createTime نام فیلد می باشد.

0 رای

برای اضافه کردن رکورد جدید باید یک متد قرار دهیم و با استفاده از تابع add رکورد را به لیست خود اضافه کنیم.

:UserData.java

@ManagedBean(name = "userData", eager = true)
@SessionScoped
public class UserData implements Serializable {
   private static final long serialVersionUID = 1L;
   private String name;
   private String dept;
   private int age;
   private double salary;
   private static final ArrayList<Employee> employees
      = new ArrayList<Employee>(Arrays.asList(
      new Employee("John", "Marketing", 30,2000.00),
      new Employee("Robert", "Marketing", 35,3000.00),
      new Employee("Mark", "Sales", 25,2500.00),
      new Employee("Chris", "Marketing", 33,2500.00),
      new Employee("Peter", "Customer Care", 20,1500.00)
   ));	


   public ArrayList<Employee> getEmployees() {
      return employees;
   }

   public String addEmployee() {		 
      Employee employee = new Employee(name,dept,age,salary);
      employees.add(employee);
      return null;
   }

   public String editEmployee(Employee employee) {
      employee.setCanEdit(true);
      return null;
   }

   public String saveEmployees() {
            
      for (Employee employee : employees) {
         employee.setCanEdit(false);
      }		
      return null;
   }
   
   public String getName() {
      return name;
   }

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

   public String getDepartment() {
      return department;
   }

   public void setDepartment(String department) {
      this.department = department;
   }

   public int getAge() {
      return age;
   }

   public void setAge(int age) {
      this.age = age;
   }

   public double getSalary() {
      return salary;
   }

   public void setSalary(double salary) {
      this.salary = salary;
   }
}

:home.xhtml

<html xmlns = "http://www.w3.org/1999/xhtml"   
xmlns:h = "http://java.sun.com/jsf/html"
xmlns:f = "http://java.sun.com/jsf/core">
   
   <h:head>
      <title>JSF tutorial</title>		
      <h:outputStylesheet library = "css" name = "styles.css"  /> 	
   </h:head>
   
   <h:body> 
      <h2>DataTable Example</h2>
      
      <h:form>
         <h:dataTable value = "#{userData.employees}" var = "employee"
            styleClass = "employeeTable"
            headerClass = "employeeTableHeader"
            rowClasses = "employeeTableOddRow,employeeTableEvenRow">
            
            <h:column>    				
               <f:facet name = "header">Name</f:facet>    				
               #{employee.name}
            </h:column>
            
            <h:column>
               <f:facet name = "header">Department</f:facet>
               #{employee.department}
            </h:column>
            
            <h:column>
               <f:facet name = "header">Age</f:facet>
               #{employee.age}
            </h:column>
            
            <h:column>
               <f:facet name = "header">Salary</f:facet>
               #{employee.salary}
            </h:column>
         </h:dataTable>
         <h3>Add Employee</h3>
         <hr/>
         
         <table>
            <tr>
               <td>Name :</td>
               <td><h:inputText size = "10" value = "#{userData.name}" /></td>
            </tr>
            
            <tr>
               <td>Department :</td>
               <td><h:inputText size = "20" value = "#{userData.dept}" /></td>
            </tr>
            
            <tr>
               <td>Age :</td>
               <td><h:inputText size = "5" value = "#{userData.age}" /></td>
            </tr>
            
            <tr>
               <td>Salary :</td>
               <td><h:inputText size = "5" value = "#{userData.salary}" /></td>
            </tr>
            
            <tr>
               <td> </td>
               <td><h:commandButton value = "Add Employee" 
                  action = "#{userData.addEmployee}" /></td>
            </tr>
         </table>	  
      </h:form>
   
   </h:body>
</html>
0 رای
در پاسخ به: نمایش لیست در jsf

برای نمایش لیست در  jsf می توانیم از تگ dataTable استفاده کنیم.این تگ لیست را درون یک جدول نمایش می دهد.

<html xmlns = "http://www.w3.org/1999/xhtml"   
xmlns:h = "http://java.sun.com/jsf/html"
xmlns:f = "http://java.sun.com/jsf/core">
<h:dataTable value = "#{userData.employees}" var = "employee"
   styleClass = ""
   headerClass = ""
   rowClasses = "">
   
   <h:column>    				
      <f:facet name = "header">Name</f:facet>    				
      #{employee.name}
   </h:column>
   
   <h:column>
      <f:facet name = "header">Department</f:facet>
      #{employee.department}
   </h:column>
   
   <h:column>
      <f:facet name = "header">Age</f:facet>
      #{employee.age}
   </h:column>
   
   <h:column>
      <f:facet name = "header">Salary</f:facet>
      #{employee.salary}
   </h:column>
</h:dataTable>
  • value : مقادیر لیست
  • var : نام لیست
  • styleClass : در این قسمت می  توانیم کلاس css برای استایل کلی جدول  مانند حاشیه  و فونت مشخص کنیم.
  • headerClass : استایل هدرهای جدول
  • rowClasses : استایل رکوردهای جدول
0 رای
در پاسخ به: Custom Validator در jsf

برای پیاده سازی ولیدیشن مورد نیاز خود مراحل زیر را انجام می  دهیم

1.  استفاده از متد validate در اینترفیس Validator 

public class UrlValidator implements Validator {
   
   @Override
   public void validate(FacesContext facesContext,
      UIComponent component, String value) throws ValidatorException {
      ...
   }
}

در متد validate ولیدیشن ای که مد نظر ما هست را پیاده سازی می  کنیم.

2. با استفاده از انوتیشن FacesValidator@  یک آی دی به کلاس خود می دهیم.

@FacesValidator("com.tutorialspoint.test.UrlValidator")
public class UrlValidator implements Validator {
}

3. استفاده از ولیدیشن خود در صفحه jsf

<h:inputText id="urlInput" value="#{userData.data}" label="URL" >
   <f:validator validatorId="com.tutorialspoint.test.UrlValidator" />
</h:inputText>
0 رای
در پاسخ به: validation در jsf

برای  کنترل ورودی ها در jsf از تگهای زیر می توانیم استفاده کنیم. برای این کار نامگذاری زیر را در  صفحه خود قرار می دهیم:

<html 
   xmlns = "http://www.w3.org/1999/xhtml" 
   xmlns:f = "http://java.sun.com/jsf/core">

سپس از تگهای زیر استفاده می کنیم:

1.کنترل طول ورودی:

<f:validateLength minimum = "5" maximum = "8" />

2.کنترل مقادریر  ورودی  عددی:

<f:validateLongRange minimum = "5" maximum = "200" />

در  اینجا مقادیر ورودی باید بین 5 و 200 باشند.

3.کنترل مقادیر  اعشاری:

<f:validateDoubleRange minimum = "1000.50" maximum = "10000.50" />
0 رای

برای اینکار از متد load به صورت زیر استفاده  می کنیم:

$("#div1").load("file.txt");

در مثال بالا گفتیم که در المان div1 محتوای file قرار داده شود.

درصورتیکه file یک فایل html باشد و بخواهیم که المان خاصی از آن را در صفحه خود قرار دهیم به صورت زیر عمل می کنیم:

$("#div1").load("file.txt #p1");

در مثال بالا گفتیم که المان p1 از فایل file در المان div1 از صفحه ما قرار بگیرد.

0 رای

برای ایجاد کمبوباکس از متد ()slideToggle می توانیم استفاده کنیم.

<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script> 
$(document).ready(function(){
  $("#flip").click(function(){
    $("#panel1").slideToggle("slow"); 
    $("#panel2").slideToggle("slow");
    $("#panel3").slideToggle("slow");


  });
});
</script>
<style> 
#panel1,#panel2,#panel3, #flip {
  padding: 5px;
  text-align: center;
  background-color: #e5eecc;
  border: solid 1px #c3c3c3;
}

#panel1 {
  padding: 50px;
  display: none;
}
#panel2 {
  padding: 50px;
  display: none;
}
#panel3 {
  padding: 50px;
  display: none;
}
</style>
</head>
<body>
 
<div id="flip">نمایش منو</div>
<div id="panel1">آیتم1</div>
<div id="panel2">آیتم2</div>
<div id="panel3">آیتم3</div>


</body>
</html>
0 رای

برای حذف یک المان در  جی کوئری از دو متد می توانیم استفاده کنیم.

اولین متد ()remove می باشد.این متد المان و همچنین زیرالمان های آن المان را حذف می کند.

<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("p").click(function(){
    $(this).remove();
  });
});
</script>
</head>
<body>

<p>این المان حذف شود</p>

<br>

<button>Remove div element</button>

</body>
</html>

دومین متد ()hide می باشد.

<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
  $("p").click(function(){
    $(this).hide();
  });
});
</script>
</head>
<body>

<p>این المان حذف شود</p>

</body>
</html>
0 رای

برای حذف یک المان در  جی کوئری از دو متد می توانیم استفاده کنیم.

اولین متد ()remove می باشد.این متد المان و همچنین زیرالمان های آن المان را حذف می کند.

<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("p").click(function(){
    $(this).remove();
  });
});
</script>
</head>
<body>

<p>این المان حذف شود</p>

<br>

<button>Remove div element</button>

</body>
</html>

دومین متد ()hide می باشد.

<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
  $("p").click(function(){
    $(this).hide();
  });
});
</script>
</head>
<body>

<p>این المان حذف شود</p>

</body>
</html>
0 رای

برای درج حاشیه رنگی از  کلاسهای زیر می توانیم استفاده کنیم.

class="border border-primary"
 class="border border-secondary"
 class="border border-success"
 class="border border-danger"
 class="border border-warning"
 class="border border-info"
 class="border border-light"
 class="border border-dark"
 class="border border-white"

برای مثال فرض کنیم می  خواهیم حاشیه یک عکس نوار رنگی باشد.

  <img src="image.jpg" alt="Cinque Terre" width="304" height="236" class="border border-success"> 
0 رای
در پاسخ به: نوار منو در bootstrap

برای فیکس کردن المان در بالای صفحه از کلاس fixed-top و پایین صفحه از کلاس fixed-bottom استفاده می کنیم.

<nav class="navbar navbar-expand-sm bg-dark navbar-dark fixed-top">
  <a class="navbar-brand" href="#">React</a>
  <ul class="navbar-nav">
    <li class="nav-item">
      <a class="nav-link" href="#">Bootstrap</a>
    </li>
    <li class="nav-item">
      <a class="nav-link" href="#">HTML</a>
    </li>
  </ul>
</nav>

این کلاسها  برای فیکس کردن همه المانها می توانند استفاده شوند و مختص نوار منو  نیستند.

0 رای

برای هایلایت کردن از کلاس d-inline bg-success استفاده می کنیم. کلمه success  رنگ هایلایت را مشخص می کند.همچنین می توانیم سایز هایلایت را با کلمات sm و md و lg به صورت زیر مشخص کنیم


  <div class="d-inline bg-success">boottstrap</div>
  <div class="d-sm-inline bg-danger">small</div>
  <div class="d-md-inline bg-warning">medium</div>
  <div class="d-lg-inline bg-secondary">larrg</div>
  <div class="d-lg-inline bg-dark">larrg</div>
  <div class="d-lg-inline bg-info">larrg</div>
  <div class="d-lg-inline bg-primary">larrg</div>

0 رای
در پاسخ به: جدول در struts

برای نمایش لیست در struts می توانیم از تگ لیب struts-layout.tld  استفاده کنیم

<%@ taglib uri=".../struts-layout.tld" prefix="layout"%>

بعد از  اینکه تگ لیب  را import کردیم برای نمایش لیست از تگ <layout:collection>  بصورت زیر استفاده می کنیم

				<layout:collection name="accessCardRequestList" styleClass="FORM">
					<layout:collectionItem title="card.requestNo" property="requestNo" />
					<layout:collectionItem title="card.accountNo" property="accountNo"/>
					<layout:collectionItem title="card.requestDate" property="requestDate"/>
					<layout:collectionItem title="card.ownerName" property="name" />
					<layout:collectionItem title="card.ownerFamily" property="family" />
					<layout:collectionItem title="card.branchName" property="branch.branchName" />
				</layout:collection>

name : نام لیستی که می خواهیم نمایش دهیم.این لیست را باید در session  قرار دهیم.

styleClass : این ویژگی رنگ و فونت ستون ها  را تنظیم می کند.

title : عنوان ستونها

property : مقدار ستون در این فیلد در لیست قرار می گیرد.

 

0 رای
در پاسخ به: آیکون لود در bootstrap

برای درج آیکون لود از کلاس spinner-border استفاده می کنیم:

<div class="spinner-border"></div>

می توانیم با استفاده از کلاسهای زیر آیکون لود رنگی داشته باشیم:

<div class="spinner-border text-muted"></div>
<div class="spinner-border text-primary"></div>
<div class="spinner-border text-success"></div>
<div class="spinner-border text-info"></div>
<div class="spinner-border text-warning"></div>
<div class="spinner-border text-danger"></div>
<div class="spinner-border text-secondary"></div>
<div class="spinner-border text-dark"></div>
<div class="spinner-border text-light"></div>

همچنین می توانیم سایز آیکون را با استفاده از spinner-border-sm کوچکتر کنیم:

<div class="spinner-border spinner-border-sm"></div>
0 رای
در پاسخ به: حذف پیغام

برای این کار می توانیم از متد fadeOut در جی کوئری استفاده کنیم. در این متد می توانیم زمان ناپدید شدن المان را مشخص کنیم.

<div id="message" >Hello!</div>
        
        <div id="message" >شما به صفحه شرکت وارد  شده اید</div>
        
        <script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
        <script>
        //When the page has loaded.
        $( document ).ready(function(){
            $('#message').fadeOut(5000);
              
        });

        </script>



0 رای
در پاسخ به: انیمیشن در صفحه html

برای این کار می توانیم از متد ()animate استفاده کنیم. با استفاده از این متد می توانیم کارهایی از قبیل تغییر سایز عکس ، کاهش وضوح تصویر ، تغییر فونت و غیره را انجام دهیم. مثلاً برای بزرگ کردن تصویر بصورت زیر عمل می کنیم:

<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script> 
$(document).ready(function(){
    $("div").animate({
      height: '+=150px',
      width: '+=150px'
  });
});
</script> 
</head>
<body>

<div >
<img src="image.png"/>
</div>

</body>
</html>

همچنین می توانیم با استفاده از hide  و toggle تصویر را از صفحه برداریم:

 $("div").animate({
    height: 'toggle'
  });
0 رای

برای این منظور می توانیم از متد fadeIn استفاده کنیم. با استفاده از این متد می توانیم یک المان را بعد از مدت زمان  مشخصی نمایش دهیم.

<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $("#div").fadeIn(20000);
});
</script>
</head>
<body>

<div id="div" style="display:none">  <span id='close'>x</span> </div>
<div > کاربر گرامی لطفا توجه نمایید</div>

</body>
</html>

همچنین برای اینکه المان در ابتدا نمایش داده نشود باید آن را "style="display:none قرار دهیم.

نمایش 81 - 100 از 217 نتیجه