PlayFramework는 APP를 완벽하게 구현합니다(8)
创建Tag标签
1.创建Model
@Entity
@Table(name = "blog_tag")public class 태그 확장 모델 구현 비교 가능 {
공개 문자열 이름;
PRivate Tag(문자열 이름) { this.name = name;
}
public String toString() { return name;
}
public int CompareTo(Tag otherTag) { 이름을 반환합니다. CompareTo(otherTag.name);
}
public static Tag findOrCreateByName(String name) {
Tag tag = Tag.find("byName", name).first(); if(태그 == null) {
tag = 새 태그(이름);
} return tag;
}}
2.Post类添加Tag属性
@ManyToMany(cascade = CascadeType.PERSIST)public Set
this.comments = new ArrayList
}
3.Post类添加방법
关联Post와Tag
public Post tagItWith(String name) {
tags.add(Tag.findOrCreateByName(name)); return this;
}
返回关联指定Tag的Post集合
공개 정적 목록
).bind("tags", Tags).bind("size", tagged.length).fetch();
}
4.写测试用例
@Testpublic void testTags() { // 새 사용자를 생성하고 저장
사용자 bob = new User("bob@Gmail.com", "비밀", "Bob").save();
// 새 게시물 만들기
Post bobPost = new Post(bob, "My first post", "Hello world").save();
Post anotherBobPost = new Post(bob, "Hop" , "안녕하세요").save();
// 뭐
assertEquals(0, Post.findTaggedWith("Red").size());
// 지금 태그하세요
bobPost.tagItWith("Red").tagItWith("Blue").save();
anotherBobPost.tagItWith("Red").tagItWith("Green"). 구하다();
// 확인
assertEquals(1, Post.findTaggedWith("Red", "Blue").size());
assertEquals(1, Post.findTaggedWith("빨간색", "녹색").size());
assertEquals(0, Post.findTaggedWith("빨간색", "녹색", "파란색").size());
assertEquals(0, Post.findTaggedWith("녹색", "파란색").size()); }
测试Tag
5.继续修改Tag类,添加方法
공개 정적 목록
6.将Tag添加到页face上
/yabe/conf/initial-data.yml 添加预置数据
태그(재생):
이름: Play
태그(아키텍처):
이름: 아키텍처
태그(테스트):
이름: 테스트
태그(mvc):
이름: MVC
게시물(jeffPost):
제목: MVC 애플리케이션
게시 위치: 2009-06-06
작성자: 제프
태그:
- 플레이
- 아키텍처
- mvc
내용: >
A Play
7.修改display.html将tag显示出来
8.添加listTagged 방법(애플리케이션 컨트롤러)
点击Tagged,显示所有带有Tag的Post列表
public static void listTagged(String tag) {
List 게시물 = Post.findTaggedWith(태그);
render(태그, 게시물);
}
9.修改display.html,Tag显示
- 태그됨
#{목록 항목:_post.tags, as:'tag'}
${tag} ${tag_is마지막 ? '' : ', '}
#{/list}
10.添加Route
GET /posts/{tag} Application.listTagged
现在有两条Route规则URL无法区分
GET /posts/{id} Application.show
GET /posts/{태그} Application.listTagged
为{id}添加规则
GET /posts/{id} Application.show
11.添加게시물 목록页face,유상동태그의 게시물
创建/app/views/Application/listTagged.html
#{extends 'main. html' /}
#{제목 설정:'' + 태그로 태그된 게시물 /}
*{********* 제목 ********* }*
#{if posts.size()>1}
${tag}
태그가 지정된 ${posts.size()}개의 게시물이 있습니다#{/if }
#{elseif 게시물}
'${tag}'
태그가 지정된 게시물이 1개 있습니다.#{/elseif}
#{else}
'${tag}'
#{/else}
태그된 게시물이 없습니다. *{********* 게시물 목록 *********}*
#{목록 항목:게시물, as:'포스트'}
#{표시 포스트:포스트, as:'teaser' /}
#{/list}
效果:
以上就是PlayFramework完整实现一个APP(八)的内容,更多敳关内容请关注PHP中文网(www.php.cn)!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

Jingdong Mall APP에서 실명인증을 받는 방법은 무엇입니까? Jingdong Mall은 많은 친구들이 자주 사용하는 온라인 쇼핑 플랫폼입니다. 쇼핑하기 전에 모든 사람이 완전한 서비스를 즐기고 더 나은 쇼핑 경험을 얻을 수 있도록 실명 인증을 수행하는 것이 가장 좋습니다. 다음은 JD.com 실명인증 방법입니다. 네티즌분들께 도움이 되었으면 좋겠습니다. 1. JD.com을 설치하고 열고 개인 계정에 로그인합니다. 2. 그런 다음 페이지 하단의 [내]를 클릭하여 개인 센터 페이지로 들어갑니다. 3. 그런 다음 화면에서 작은 [설정] 아이콘을 클릭합니다. 오른쪽 상단에서 설정 기능 인터페이스로 이동합니다. 4. [계정 및 보안]을 선택하여 계정 설정 페이지로 이동합니다. 5. 마지막으로 [실명 인증] 옵션을 클릭하여 실명 정보를 입력합니다. 설치시스템에서는 실제 개인정보를 입력하고 실명인증을 완료해야 합니다.

Dashen APK를 예로 들어 보겠습니다. 앱 복호화 Lua 스크립트에 대한 이전 분석을 통해 Dashen APK의 Lua 스크립트를 복호화할 수 있습니다. 이제 해당 리소스(구성 파일 및 사진 등)를 복호화해 보겠습니다. 복호화 전의 더 중요한 구성 파일을 예로 들어 보겠습니다. 파일 헤더에는 fuckyou!라는 서명 값도 있습니다. 이것을 보고 우리는 먼저 xxtea로 암호화한 것인지 생각해 보았으며, 먼저 xxtea로 복호화한 후 압축을 풀어보니 여전히 오류가 발생하고 있었습니다. 우리가 방금 말한 것을 부정해야 합니다. 우리는 계속해서 구성 파일의 암호를 단계별로 해독합니다. 잠시 생각해 보세요. 파일 헤더는 다음과 같습니다. fuckyou! 파일을 해독하려면 필연적으로 처리가 필요합니다

Microsoft는 올해 초 Windows 11 보안 기능인 SmartAppControl을 출시했습니다. 당시 마이크로소프트는 이를 "신뢰할 수 없거나 잠재적으로 위험한 애플리케이션을 차단하는" 보호 도구라고 설명했습니다. 당시 이 도구의 독특한 점은 Windows 11 장치에서 실행되어야 하는지 여부를 결정했다는 것입니다. SmartAppControl은 처음에 평가 모드에서 실행됩니다. 이 모드에서 응용 프로그램을 열어야 할지 여부가 결정됩니다. Microsoft는 사용자가 Windows 보안 앱의 앱 및 브라우저 컨트롤 섹션에서 스마트 앱 컨트롤을 활성화할 수 있음을 밝혔습니다. Microsoft에만 따르면 SmartAppC

AppStore는 iOS 관련 애플리케이션을 위한 마켓플레이스입니다. 여기에서는 무료 앱과 유료 앱도 찾을 수 있습니다. 앱은 게임 앱, 생산성 앱, 유틸리티 앱, 소셜 미디어 앱 및 더 많은 카테고리의 앱이 될 수 있습니다. AppStore에서 iPhone용 앱을 많이 다운로드하거나 구입했을 수 있습니다. 이제 App Store에서 구매한 앱의 구매 내역을 확인하는 방법이 궁금하실 것입니다. 때로는 개인 정보 보호를 위해 구매 내역에서 특정 구매를 숨기고 싶을 수도 있습니다. 이 글에서는 구매 내역을 찾는 방법과 필요한 경우 구매 내역에서 구매 항목을 삭제/숨기는 방법을 안내합니다. 1 부

Apple의 제품과 서비스는 항상 전 세계 사용자들에게 사랑을 받아왔습니다. 홍콩 Apple ID를 등록하면 사용자에게 더 많은 편리함과 특권이 제공됩니다. 홍콩 Apple ID를 등록하는 단계와 주의해야 할 사항을 살펴보겠습니다. 홍콩 Apple ID를 등록하는 방법 Apple 장치를 사용할 때 많은 응용 프로그램과 기능에 로그인하려면 Apple ID를 사용해야 합니다. 홍콩에서 애플리케이션을 다운로드하거나 홍콩 AppStore의 특혜 콘텐츠를 즐기려면 홍콩 Apple ID를 등록하는 것이 매우 필요합니다. 이 기사에서는 홍콩 Apple ID를 등록하는 방법과 주의해야 할 사항에 대한 단계를 자세히 설명합니다. 단계: 언어 및 지역 선택: Apple 장치에서 "설정" 옵션을 찾아 입력하세요.

China Unicom 앱은 모든 사람의 요구를 쉽게 충족할 수 있습니다. 다양한 서비스를 처리하고 싶다면 여기에서 제때에 구독을 취소할 수 있습니다. 후속 손실을 피하기 위해 많은 사람들이 휴대폰을 사용할 때 데이터가 충분하지 않다고 느껴 추가 데이터 패키지를 구입하지만 다음 달에 원하지 않으면 즉시 구독을 취소하려는 경우가 있습니다. 에디터가 설명하는 구독 취소 방법을 제공하여, 필요한 친구들이 와서 사용할 수 있도록 해드립니다! China Unicom 앱의 오른쪽 하단에 있는 "내" 옵션을 찾아 클릭하세요. 내 인터페이스에서 내 서비스 열을 슬라이드하고 "주문했습니다" 옵션을 클릭하세요.

앱의 정식 명칭은 "애플리케이션(Application)"으로, 애플리케이션 프로그램(Application Program)의 약자로 모바일 기기용으로 개발된 소프트웨어 애플리케이션을 의미합니다. 앱의 출현은 사용자에게 더욱 다양한 모바일 애플리케이션 선택권을 제공하여 다양한 시나리오에서 다양한 사용자 요구를 충족시킵니다. 앱 개발 프로세스에는 소프트웨어 설계, 프로그래밍, 테스트 등 다양한 측면이 포함되며, 장치 호환성, 성능 최적화, 보안과 같은 문제도 고려해야 합니다.

최근 저자는 페이스북 안드로이드 앱에서 딥링크 취약점을 발견했다. 이 취약점을 이용해 사용자 휴대폰에 설치된 페이스북 안드로이드 앱을 백도어 프로그램(Backdoor)으로 변환해 백도어링을 수행할 수 있다. 또한 이 취약점은 Facebook 앱을 재패키지하여 특정 대상 피해자에게 전송하여 설치 및 사용하는 데에도 사용될 수 있습니다. 작성자가 이 취약점을 발견하는 과정과 Payload를 통해 이를 어떻게 구성하고 최종적으로 Facebook APP의 실제 제작 환경에서 보안 위험으로 변환시키는 방법을 살펴보겠습니다. 일반적으로 취약점을 발견할 때 공개 테스트를 수행할 때 먼저 대상 시스템의 적용 메커니즘을 주의 깊게 이해합니다. 지난 블로그에서 Face를 구문 분석하는 방법을 공유했습니다.
