public class Persona {
private String nombre;
private int edad;
public Persona(String nombre){
this(nombre,18);
}
public Persona(String nombre,int edad){
setNombre(nombre);
setEdad(edad);
}
/**
* @return the nombre
*/
public String getNombre() {
return nombre;
}
/**
* Ponemos el nombre que le pasamos
* @param nombre que tiene que ser, por supuesto, una cadena
*/
public void setNombre(String nombre) {
if (nombre.length()<2){
nombre="Desconocido";
}
this.nombre = nombre;
}
/**
* @return the edad
*/
public int getEdad() {
return edad;
}
/**
* @param edad the edad to set
*/
public void setEdad(int edad) {
if(edad<18){
edad=18;
}
this.edad = edad;
}
public String muestra(){
return nombre+" tiene "+edad+" años";
}
public String muestra(String tipo){
if (tipo.equals("Edad")){
return muestra(1);
}
else{
return muestra(0);
}
}
public String muestra(int tipo){
if (tipo==0){
return "Se llama "+nombre;
}
else{
return "Tiene "+edad+" años";
}
}
public String toString(){
return "Nombre: "+nombre+" | Edad:"+edad;
}
}
Autor: Juan Pablo Fuentes
Television con private
public class Television {
private String marca="LG";
private int volumen=6;
/**
* @return the marca
*/
public String getMarca() {
return marca;
}
/**
* @param marca the marca to set
*/
public void setMarca(String marca) {
this.marca = marca;
}
/**
* @return the volumen
*/
public int getVolumen() {
return volumen;
}
/**
* @param volumen the volumen to set
*/
public void setVolumen(int volumen) {
this.volumen = volumen;
}
}
public class TelevisionTest {
public static void main(String[] args) {
Television tv1=new Television();
tv1.setVolumen(5);
tv1.setMarca("Sony");
System.out.println(tv1.getVolumen());
System.out.println(tv1.getMarca());
Television tv2=new Television();
tv2.setVolumen(15);
System.out.println(tv2.getVolumen());
System.out.println(tv2 .getMarca());
}
}
Tutoriales y ejercicios Java
Ejemplo clase persona
public class Persona {
public String nombre;
public int edad;
/**
* @return the nombre
*/
public String getNombre() {
return nombre;
}
/**
* Ponemos el nombre que le pasamos
* @param nombre que tiene que ser, por supuesto, una cadena
*/
public void setNombre(String nombre) {
this.nombre = nombre;
}
/**
* @return the edad
*/
public int getEdad() {
return edad;
}
/**
* @param edad the edad to set
*/
public void setEdad(int edad) {
if(edad<18){
edad=18;
}
this.edad = edad;
}
public String muestra(){
return nombre+" tiene "+edad+" años";
}
public String toString(){
return "Nombre: "+nombre+" | Edad:"+edad;
}
}
WebServices y REST
Examen CMS y CakePHP
Examen recuperación PHP acceso a datos
Autenticación cakePHP 5
Ponemos las siguientes funciones en el UsuariosController:
public function login() {
if ($this->request->is('post')) {
$passwordHasher = new BlowfishPasswordHasher();
if ($this->Auth->login()) {
return $this->redirect($this->Auth->redirectUrl());
}
$this->Session->setFlash(__('Invalid username or password, try again'));
}
}
public function logout() {
return $this->redirect($this->Auth->logout());
}
Model Callbacks
Son los siguientes:
- beforeFind()
- afterFind()
- beforeValidate()
- afterValidate()
- beforeSave()
- afterSave()
- beforeDelete()
- afterDelete()
Y pueden verse aquí:
Controller callbacks
Retrollamadas (“Callbacks”)
Los controladores de CakePHP vienen con retrollamas (callbacks) empotradas que puedes usar para insertar lógica justo antes o después de que las acciones del controlador sean llevadas a cabo.
beforeFilter()
Esta función se ejecuta antes de toda acción en el controlador. Es un lugar práctico para comprobar una sesión activa o inspeccionar los permisos del usuario.
beforeRender()
Llamada tras la lógica de acción del controlador, pero antes de que la vista es renderizada. Este callback no es utilizado a menudo, pero puedes necesitarlo si estás llamando a render() manualmente antes del final de una acción dada.
afterFilter()
Llamada tras toda acción del controlador.
afterRender()
Llamada tras haber sido renderizada una acción.